![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Дело в том, что я запускаю терминалы автоматизированным способом с параметрами командной строки из сетевой распределённой системы с центральной SQL базой, и хочу получить устойчивую работу всей данной системы с большим числом клиентских мест на протяжении нескольких недель и месяцев. Но периодически терминалы зависают в памяти, им внешняя система отводит на один прогон теста какое-то время (by default 120 sec., это можно менять) и потом закрывает процесс терминала (kill process), после чего перезапускает его заново. Так вот, иногда эта ситуация впадает в бесконечный цикл, т.е. судя по моим логам, терминал не отработал за отведённое время, его процесс система прибила, попробовала запустить заново, но это шаг не удался.
Крешлог можно найти в файле /logs/crashlog.log
Отлично, Ренат и Станислав, спасибо Вам.
Ренат, ещё раз благодарю Вас за весьма полезный код. Могу в ответ поделиться своим, который создал на его основе, и результатами его отработки.
На практике в тестах принудительного закрытия терминал завершается от первого до пятого шага (время задержки растёт):
Аналогично, под Vista при попытке в редакторе сделать copy-paste - редактор падает.
случилось
упал редактор при выполнении copy. В нем было открыто 9 файлов, если это имеет значение. Пока это окно не было закрыто, во всех программах перестало работать copy.
В папке logs ни каких крэшлогов не появилось.
Аналогично, под Vista при попытке в редакторе сделать copy-paste - редактор падает.
случилось
упал редактор при выполнении copy. В нем было открыто 9 файлов, если это имеет значение. Пока это окно не было закрыто, во всех программах перестало работать copy.
В папке logs ни каких крэшлогов не появилось.
Ренат, скажите, пожалуйста, какой код команды нужно послать терминалу для остановки оптимизатора? Аналог этого, который Вы дали для тестера, не останавливает терминал-оптимизатор:
Дело в том, что я пробовал давать процессу терминала после запуска мало времени перед закрытием (~10-12 сек.), и после запускал описанную выше процедуру корректного закрытия терминала. Тестер завершал свою работу, оптимизатор же после такой команды продолжал свою работу до полной отработки переборов комбинаций.
У меня Windows Vista Home Premium постоянно при запуски тестера (даже с совместимостью с Windows XP SP2) выкидывает из программы и выдает такое окно:
There has been a critical error
Time : 2008.04.02 02:38
Program : Client Terminal
Version : 4.00 (build: 213, 18 Mar 2008)
OS : Windows Vista Professional 6.0 (Build 6000)
Processors : 2 x X86 (level 6)
Memory : 2094912/929488 kb
Exception : C0000005
Address : 0046275F
Access Type : read
Access Addr : 00000300
Registers : EAX=02798E88 CS=001b EIP=0046275F EFLGS=00010206
: EBX=00000000 SS=0023 ESP=0442BD28 EBP=0442BD60
: ECX=00000000 DS=0023 ESI=0045F2DC FS=003b
: EDX=00000300 ES=0023 EDI=028B1FE0 GS=0000
Stack Trace : 00454D13 FFFFFFFF 00000000 00000000
: 00000000 00000000 00000000 00000000
: 00000000 00000000 00000000 00000000
: 00000000 00000000 00000000 00000000
Modules :
1 : 00400000 002A8000 c:\program files\metatrader 4\terminal.exe
2 : 03C10000 00006000 c:\program files\punto switcher\correct.dll.1206130071
3 : 03C20000 00035000 c:\windows\system32\btmmhook.dll
4 : 10000000 00071000 c:\program files\digitalpersona\bin\dpofeedb.dll
5 : 70520000 00038000 c:\windows\system32\odbcint.dll
6 : 70690000 00065000 c:\windows\system32\odbc32.dll
7 : 70700000 0011C000 c:\windows\system32\mfc42.dll
8 : 74120000 00066000 c:\windows\system32\audioeng.dll
9 : 741D0000 00007000 c:\windows\system32\midimap.dll
10 : 741E0000 00021000 c:\windows\system32\audioses.dll
11 : 74210000 000B7000 c:\windows\system32\propsys.dll
12 : 74360000 00015000 c:\windows\system32\msacm32.dll
13 : 74380000 00009000 c:\windows\system32\msacm32.drv
14 : 743C0000 00030000 c:\windows\system32\wdmaud.drv
15 : 74410000 00004000 c:\windows\system32\ksuser.dll
16 : 74C60000 00038000 c:\windows\system32\oleacc.dll
17 : 74CA0000 00033000 c:\windows\system32\winmm.dll
18 : 750C0000 00194000 c:\windows\winsxs\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6000.16386_none_5d07289e07e1d100\comctl32.dll
19 : 75290000 0003F000 c:\windows\system32\uxtheme.dll
20 : 753D0000 00027000 c:\windows\system32\mmdevapi.dll
21 : 754C0000 0002D000 c:\windows\system32\wintrust.dll
22 : 75580000 00005000 c:\windows\system32\msimg32.dll
23 : 75650000 00006000 c:\windows\system32\wshtcpip.dll
24 : 75660000 00007000 c:\windows\system32\avrt.dll
25 : 75740000 00038000 c:\windows\system32\rsaenh.dll
26 : 759B0000 0003B000 c:\windows\system32\mswsock.dll
27 : 75C80000 000F1000 c:\windows\system32\crypt32.dll
28 : 75D80000 00014000 c:\windows\system32\mpr.dll
29 : 75DD0000 00012000 c:\windows\system32\msasn1.dll
30 : 76150000 0002C000 c:\windows\system32\apphelp.dll
31 : 761B0000 00014000 c:\windows\system32\secur32.dll
32 : 761D0000 0001E000 c:\windows\system32\userenv.dll
33 : 76310000 00007000 c:\windows\system32\psapi.dll
34 : 76320000 00009000 c:\windows\system32\lpk.dll
35 : 76330000 00ACE000 c:\windows\system32\shell32.dll
36 : 76E00000 0007D000 c:\windows\system32\usp10.dll
37 : 76E80000 00055000 c:\windows\system32\shlwapi.dll
38 : 76EE0000 000AA000 c:\windows\system32\msvcrt.dll
39 : 76F90000 00144000 c:\windows\system32\ole32.dll
40 : 770E0000 000C3000 c:\windows\system32\rpcrt4.dll
41 : 771B0000 000D8000 c:\windows\system32\kernel32.dll
42 : 772E0000 00127000 c:\windows\system32\urlmon.dll
43 : 77410000 00045000 c:\windows\system32\iertutil.dll
44 : 77460000 00003000 c:\windows\system32\normaliz.dll
45 : 77470000 0008C000 c:\windows\system32\oleaut32.dll
46 : 77500000 00029000 c:\windows\system32\imagehlp.dll
47 : 77530000 00189000 c:\windows\system32\setupapi.dll
48 : 776C0000 00006000 c:\windows\system32\nsi.dll
49 : 776D0000 000BF000 c:\windows\system32\advapi32.dll
50 : 77790000 000CF000 c:\windows\system32\wininet.dll
51 : 77860000 0009E000 c:\windows\system32\user32.dll
52 : 77900000 0001E000 c:\windows\system32\imm32.dll
53 : 77920000 00074000 c:\windows\system32\comdlg32.dll
54 : 779A0000 0002D000 c:\windows\system32\ws2_32.dll
55 : 779D0000 00084000 c:\windows\system32\clbcatq.dll
56 : 77A60000 0011E000 c:\windows\system32\ntdll.dll
57 : 77B80000 000C7000 c:\windows\system32\msctf.dll
58 : 77C50000 0004B000 c:\windows\system32\gdi32.dll
Call stack :
0045F260:34FF [0046275F] ?ExecuteStaticAsm@CExpertInterior (terminal.exe)
00454C00:0113 [00454D13] ?RunExpertInt@CExpertInterior (terminal.exe)
Когда работаю с композитным окном Windows Aero - появляются артифакты на графике очень редко в основном обрезает половину правой колонки цены.
Еще замечен глючок иногда не сохраняет последние открытые графики.
Пока всее что заметил
Дело не в висте а в 213 билде! Скачайте последний, 215 билд и обязательно перекомпилируйте Вашего эксперта.