На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Как увеличить временной интервал обновления карты из кэша на ГИС Сервере

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
Как увеличить временной интервал обновления карты из кэша на ГИС Сервере, TMapGisServer
 
Здравствуйте!

Если мы правильно понимаем политику ГИС Сервера,
то мы понимаем ее так.
Пользователь внося изменения в объекты карты,
вносит на самом деле их в карту, размещенную в папке кэша.
Затем, через определенный интервал времени,
изменения, сделанные на карте кэша, синхронизируются с картой на ГИС Сервере.
Если, что-то не правильно мы понимаем, просьба поправить нас.
Если правильно мы понимаем, то просьба подсказать,
можно ли принудительно задать интервал времени,
через который прикладная программа будет обновлять сделанные изменения карты кэша и карты на ГИС Сервере?  
 
Добрый день!

Все изменения, которые выполняются на карте, открытой с ГИС Сервера, передаются на сервер без задержек.
Изменения пройдут, только если ГИС Сервер позволит это сделать.

А вот изменения, сделанные другими пользователями придут к Вам в кэш с заданным периодом обновления.
Если мы говорим о программировании, то такое обновление Вы можете инициировать самостоятельно командой
Цитата

 // Выполнить согласование данных электронной карты
 // в памяти и на диске (при многопользовательском доступе к данным)
 // hmap -  идентификатор открытых данных
 // Если состояние данных в памяти изменилось (по данным
 // с диска) - возвращает ненулевое значение (1), иначе 0
 // Если карта должна быть закрыта - возвращает 2 (доступ на ГИС Сервер прекращен)
 // Если состояние изменилось - необходимо перерисовать изображение карты
 // Опрос состояния целесообразно выполнять периодически
 // в процессе работы приложения

_MAPIMP long int _MAPAPI mapAdjustData(HMAP hMap);
 
Цитата
Денис Вицко написал:
Все изменения, которые выполняются на карте, открытой с ГИС Сервера, передаются на сервер без задержек.
Денис, спасибо.
Ответ нас устроил ровно наполовину.
Первое, спасибо, что напомнили нам предназначение
mapAdjustData(HMAP hMap);
Мы конечно убрали эту команду из исходников,
т.к. понатыкали ее везде, а она оказывается не про это.
Здесь понятно.

А вот насчет второго вопроса, что в ядре GIS ToolKit нет возможности
установить таймаут обновления карты из кэша на ГИС Сервере,
это очень печально.
Вплоть до того, что придется отдельным пользователям-картографам перенести карту на локальный компьютер для ускорения их работы.  

Кстати тоже касается программы ГИС Панорама.
Она тормозит на 5 секунд в момент обновления карты из кэша на ГИС Сервере.
Изменено: Сергей Викторович - 14.11.2022 17:17:37
 
Цитата
Сергей Викторович написал:
А вот насчет второго вопроса, что в ядре GIS ToolKit нет возможности установить таймаут обновления карты из кэша на ГИС Сервере,это очень печально.

Цитата

TMapView.SetTimerAdjustData
Установить параметры отслеживания изменений в данных при  многопользовательском редактировании

procedure SetTimerAdjustData(aInterval : integer);

Описание:
Процедура устанавливает время (в секундах) отслеживания изменений в данных при многопользовательском доступе.
Вход:  aInterval - время в секундах, через которое происходит проверка изменений в данных . Если изменения произошли, то выполняется обновление изображения карты.
Если aInterval = 0, режим отслеживания изменений отключен.
По умолчанию режим отключен
Цитата



Сергей Викторович написал:
Вплоть до того, что придется отдельным пользователям-картографам перенести карту на локальный компьютер для ускорения их работы.  
Тут не понял, в чем выгода, но Вы архитектор вашей системы, вам виднее.
Работа с локальной картой будет заметно быстрее работать только если сеть медленная, а карта у Вас на сервере меняется постоянно в очень большом составе объектов.

Цитата
Сергей Викторович написал:
Кстати тоже касается программы ГИС Панорама.Она тормозит на 5 секунд в момент обновления карты из кэша на ГИС Сервере.
С этим надо разбираться предметно.
Что значит "обновление карты из кэша на ГИС Сервере"? Что за кэш на ГИС Сервере? ГИС Сервер тоже откуда-то получает данные (с другого ГИС Сервера, из СУБД)?
Если в ГИС Панорама Вы вызываете обновление карты через Ctrl+F5, то это обновление кэша, а полное его перестроение - то есть карта полностью заново загружается с ГИС Сервера.
 
Цитата
Денис Вицко написал:
С этим надо разбираться предметно.Что значит "обновление карты из кэша на ГИС Сервере"? Что за кэш на ГИС Сервере? ГИС Сервер тоже откуда-то получает данные (с другого ГИС Сервера, из СУБД)?Если в ГИС Панорама Вы вызываете обновление карты через Ctrl+F5, то это обновление кэша, а полное его перестроение - то есть карта полностью заново загружается с ГИС Сервера.
Денис, здравствуйте!
Спасибо за очень предметный и обстоятельный ответ.
По поводу первого, procedure SetTimerAdjustData(aInterval : integer);
отлично, будем разбираться и пробовать.
Изменено: Сергей Викторович - 15.11.2022 11:33:20
Страницы: 1
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности