SASGIS - SAS.Планета
View Issue Details
0002223SAS.ПланетаРефакторингpublic24-10-2013 10:2021-12-2019 09:14
vdemidov 
 
normalminorhave not tried
confirmedopen 
121010 
2012xx 
0002223: Переделать закачку видимой области карты
Сейчас для отправки запросов на закачку видимой области карты для каждой активной карты создается отдельный поток, хотя реально работа в нем практически не ведется, а поток постоянно стоит на семафоре. Достаточно завести массив отправленных запросов на закачку из этой карты, при их выполнении просто очищать соответствующие элементы массива и по достаточно частому таймеру отправлять новые запросы и сохранять их в пустые элементы массива. Если пустых нет, то новых запросов не отправлять.
загрузка, закачка
related to 0002224resolved zed Убрать создание отдельного INotifier для каждого запроса на закачку тайла 
related to 0002307resolved zed В процессе закачки видимой области "моргают" тайлы 
child of 0000925confirmed  Автоматическая загрузка тайлов для карты обзора 
child of 0002794confirmed  Утечка памяти при закрытии программы до обработки всех запросов на закачку тайла 
Issue History
24-10-2013 10:20vdemidovNew Issue
24-10-2013 10:21vdemidovStatusnew => confirmed
24-10-2013 10:51vdemidovRelationship addedchild of 0002224
24-10-2013 12:12vdemidovRelationship addedchild of 0000925
24-10-2013 12:16vdemidovTag Attached: загрузка
24-10-2013 12:16vdemidovTag Attached: закачка
04-11-2013 14:22vdemidovTarget Version22xxxx => 140303
07-01-2014 16:13vdemidovRelationship addedrelated to 0002307
08-01-2014 04:43zedNote Added: 0013505
08-01-2014 07:50vdemidovNote Added: 0013509
08-01-2014 10:28zedNote Added: 0013514
08-01-2014 10:56vdemidovNote Added: 0013517
08-01-2014 16:56zedRelationship replacedrelated to 0002224
03-03-2014 08:47vdemidovTarget Version140303 => 140404
19-03-2014 08:03vdemidovTarget Version140404 => 141111
23-10-2014 09:01vdemidovTarget Version141111 => 150915
21-01-2015 10:39vdemidovTarget Version150915 => 151010
21-08-2015 15:23vdemidovRelationship addedchild of 0002794
04-10-2015 15:28vdemidovTarget Version151010 => 151111
06-11-2015 08:20vdemidovTarget Version151111 => 191221
21-12-2019 09:14zedTarget Version191221 => 2012xx

Notes
(0013505)
zed   
08-01-2014 04:43   
А ничего, что мы там ходим в тайлохранилище перед тем, как запустить новую задачу на закачку? Если это всё перенести в главный поток, то будут лаги.
(0013509)
vdemidov   
08-01-2014 07:50   
Ну, так не обязательно же из ГУИшного потока заполнять очередь. Я имел в виду, что достаточно одного потока на все карты, а не по одному на каждую. Это позволит избежать лишних созданий потоков и не нужна будет та ерунда с TTL таймерами.
(0013514)
zed   
08-01-2014 10:28   
> Я имел в виду, что достаточно одного потока на все карты, а не по одному на каждую
А, ну тогда другой разговор. Если ещё за компанию получится избавиться от двойной проверки наличия тайлов в кэше (в качалке и рисовалке) будет вообще хорошо. Т.е. один поток проверяет наличие тайлов и рассылает задания либо качалке, либо рисовалке.
(0013517)
vdemidov   
08-01-2014 10:56   
>Т.е. один поток проверяет наличие тайлов и рассылает задания либо качалке, либо рисовалке.
Это вряд ли. Сильно уж разные конвейеры. ИМХО нужно допилить кэширование запросов информации о тайле на уровне тайлохранилища и проблема пропадет.