Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Если возникают проблемы с удалением синглтона, скорее всего он неверно используется. Хотя синглтоны тоже разные бывают, взять к примеру феникс.
Например, мой любимый shared ptr.
Хотя для длль, наверное, это не самый лучший способ.
У меня в С++ указатели не используются.
Также как выделение памяти, вызовы WinAPI и проч.
.
Или можно завести специальную функцию типа killInstance();
.
Вадиму смог посоветовать синглетоны потому, что
сам решал проблему инициализации.
Другого способа /С++/ нормально инициализировать
глобальные инстансы нет.
.
Подсмотрел в инете у кого-то.
Дедлок по симптомам. Видимо при запуске из удаленного процесса терминал не успевает выполнить какую-то процедуру. Возможно скрипт запускается не из того потока.
Как вариант вместо слипа запустить событие тика -- т.е. сделать эмуляцию асинхронного запуска скрипта, должно помочь.
После всех переделок библиотеки моих классов на правильные синглетоны, наконец-то, вернулся к главному проекту.
Теперь проблема из первого поста этой темы решена. Дело было в неправильной, несвоевременной инициализации классов.
... вернулся к главному проекту...
надеюсь впоследствии поглазеть на вашу конструкцию хотя бы в виде блок-схем или скриншотов: подивиться, так сказать)))
:-)) Да, ничего осбенного. Этот проект тоже является подпроектом.
Это консольное приложение, которое всего лишь, с помощью МТ4 загружает/подгружает историю по таймеру независимо от основного терминала (боевого).
Основная функция этого приложения уже работает. Осталось сделать синтез нестандартных ТФ для расчёта весовых коэффициентов индексов валют.
Создание нестандартных ТФ и расчёт весовых коеффициентов и пополнение ими БД происходит в дополнительных потоках независимо от подкачки котировок.
Консольное приложение:
1. Создаёт, если нет, каталог - копию корневого каталога МТ4 в нём самом.
2. Создаёт, если нет, копии необходимых каталогов и файлов в этом каталоге с помощью жёстких и символьных ссылок, чтобы диск не переполнять.
Т.е., фактически, работа идёт с оригиналами файлов основного МТ4.
3. Запускает МТ4 из нового каталога.
4. Переключает инструменты и ТФ, обновляя графики.
5. Закрывает МТ4, чтобы он сохранил всё подкаченное в файлы истории.
6. Ждёт завершения процесса МТ4.
7. Запускает создание нестандартных ТФ.
8. Запускает поток с расчётом и сохранением весовых коэффициентов.
9. По таймеру всё снова.
правильно ли будет сказать, что обходные маневры организованы главным образом ради пункта 5?
Всё это в основном для повышения надёжности торговли в основном терминале. Подкачка всех инструментов переполняет память МТ4. Он в таком режиме работает не надёжно.
Да, и эксперт, который перегружен разными сервисными функциями, не слишком надёжен, как оказалось. Надо разделить задачи на разные терминалы.
Возможно, для торговли будет третий терминал.
А можна тупой вопрос - как узнать, какие из окон графиков терминала счас видимы пользователю?
;)
А можна тупой вопрос - как узнать, какие из окон графиков терминала счас видимы пользователю?
;)