Но ничего не мешает через общий буфер обмена работать параллельно. Просто сделать доп. проверку.
Это первое, что я попробовал. Потратил несколько дней на отладку файлового семафора в COMMON, но стабильной работы не добился. Может встроенные файловые функции работают немного не так по таймингу, как я думаю.
Возможно, надо попробовать файлы через WinAPI, общую память или даже семафорное API (наверняка есть, может кто подскажет; в голову сразу пришел MutEx, буду думать).
Если есть желание проанализировать мои функции Lock и Release (они короткие), могу выложить послезавтра. Нет?
Edgar Akhmadeev: Это первое, что я попробовал. Потратил несколько дней на отладку файлового семафора в COMMON, но стабильной работы не добился. Может встроенные файловые функции работают немного не так по таймингу, как я думаю.
Возможно, надо попробовать файлы через WinAPI, общую память или даже семафорное API (наверняка есть, может кто подскажет; в голову сразу пришел MutEx, буду думать).
Если есть желание проанализировать мои функции Lock и Release (они короткие), могу выложить послезавтра. Нет?
Ну Вы намудрили! Введите string-input, в который запихивайте через буфер путь к Терминалу. После пропихивания настроек считывайте их и сверяйте на их корректность. В частности, по этой string-input. Кнопку Старт нажимайте, как проверка удачно завершится.
Ну Вы намудрили! Введите string-input, в который запихивайте через буфер путь к Терминалу. После пропихивания настроек считывайте их и сверяйте на их корректность. В частности, по этой string-input. Кнопку Старт нажимайте, как проверка удачно завершится.
Не то чтобы намудрил, просто слишком прямолинеен. Мульти доступ значит семафоры.
1. Я бы перешёл от GetTickCount() на GetTickCount64() в Sleep2. Иначе переполнение грозит не совсем правильной логикой. А в 64-варианте это происходит заметно реже. В других работах, возможно, тоже стоит перейти.
Воспользуйтесь багом КБ: zip-файл содержит первый релиз.
Нашел только за декабрь 2019. В MTTester, вроде, не удалял старые функции.
Нашел только за декабрь 2019. В MTTester, вроде, не удалял старые функции.
Может, хоть в виде идеи - как из кода устанавливать параметры оптимизации эксперта?
Только такие возможности.
Но ничего не мешает через общий буфер обмена работать параллельно. Просто сделать доп. проверку.
Но ничего не мешает через общий буфер обмена работать параллельно. Просто сделать доп. проверку.
Это первое, что я попробовал. Потратил несколько дней на отладку файлового семафора в COMMON, но стабильной работы не добился. Может встроенные файловые функции работают немного не так по таймингу, как я думаю.
Ну Вы намудрили! Введите string-input, в который запихивайте через буфер путь к Терминалу. После пропихивания настроек считывайте их и сверяйте на их корректность. В частности, по этой string-input. Кнопку Старт нажимайте, как проверка удачно завершится.
Нечто похожее делается даже.
Ну Вы намудрили! Введите string-input, в который запихивайте через буфер путь к Терминалу. После пропихивания настроек считывайте их и сверяйте на их корректность. В частности, по этой string-input. Кнопку Старт нажимайте, как проверка удачно завершится.
Ускорение ГА.
Советник во фрейм-режиме принимает OnTester от Агентов. Если за 100-1000 проходов ничего путного не нашлось - жмем на Стоп.
На порядок можно ускорить Оптимизацию.На порядок можно ускорить Оптимизацию.
Сделал по реальным тикам (месяц) 470 оптимизаций (каждая на своем символе) за 4.5 часа.
1. Я бы перешёл от GetTickCount() на GetTickCount64() в Sleep2. Иначе переполнение грозит не совсем правильной логикой. А в 64-варианте это происходит заметно реже. В других работах, возможно, тоже стоит перейти.
2. Тут второй ArrayResize вызывает вопросы
Скорее всего должно быть
Res = ::ArrayResize(Buffer, Read / sizeof(T));3. Ну и напоследок немного разных типов