Подскажите как будет правильно по структуре. - страница 2

 
Maxim Kuznetsov #:

поведение static зависит от версии (4/5), конкретного билда и настроя разработчиков. Это поведение static внутри DLL овеяно соглашениями и организацией памяти

чтобы быть уверенным что значение в OnInit то-же что при OnDeinit (то есть восстановлено то что ранее сохранено) - надо использовать глобальные переменные или файлы или sqlite/иные_базы

но в конце концов никто не гарантирует что между OnDeinit/OnInit нет рестарта терминала или целой Ось, не стоит полагаться на милости от природы, если надо сохранять данные то стоит приложить к этому усилия

PS/ тут даже очерёдность OnInit/Deinit не всегда однообразно очевидна. Про Deinit - даже его сомнения в его наличии. Есть ощущение что при перезагрузке по причине перекомпиляции порою не происходит :-)

Максим, сначала - распределение памяти, после - init, deinit и прочие start. Сохранять ничего не надо. 

Толерантность (устойчивость к отказам, а не к гомикам) - другая тема. 

 
Алексей Тарабанов #:

Максим, сначала - распределение памяти, после - init, deinit и прочие start. Сохранять ничего не надо. 

Толерантность (устойчивость к отказам, а не к гомикам) - другая тема. 

Алексей, всё немного иначе в реальном современном мире, чем ранее в фортране :-) deinit бывает что случается раньше чем прежний init. ключевое слово static к модели памяти и месту хранения имеет косвенное отношение. 

и MQL не C/C++. Эксперт-робот не отдельная программа и ровнять по нативным приложениям не стоит. Похоже, насколько авторы MT смогли+захотели сделать, но не более того

 
Maxim Kuznetsov #:

Алексей, всё немного иначе в реальном современном мире, чем ранее в фортране :-) deinit бывает что случается раньше чем прежний init. ключевое слово static к модели памяти и месту хранения имеет косвенное отношение. 

и MQL не C/C++. Эксперт-робот не отдельная программа и ровнять по нативным приложениям не стоит. Похоже, насколько авторы MT смогли+захотели сделать, но не более того

В фортране статика не было ) В PL/1 появились режимы управления памятью Static, Dynamic, Based, Controlled.