Код: Выделить всё
function Initialize()
{
//.......
AddGlobalVariable("I",Types.Int,0);
}
function OnUpdate()
{
int m=I; I=m+1;
for(int i=0;i<300;i++)
{
System.Threading.Thread.Sleep(500);
System.Threading.Thread.Sleep(0);
System.Threading.Thread.Sleep(500);
System.Threading.Thread.Sleep(0);
System.Threading.Thread.Sleep(500);
System.Threading.Thread.Sleep(0);
System.Threading.Thread.Sleep(500);
System.Threading.Thread.Sleep(0);
ShowMessage("Поток " + m + " Время работы " + i + " " + i*2);
i=i;
}
}
Однако, как мы только запускаем такой робот, все другие советники и все графики останавливаются до окончания его работы. Т.е., все советники, индикаторы, графики работают в одном потоке, и совместно никак работать не могут - только по очереди (лента сделок и цены в таблицах тьфу-тьфу, вроде работают).
Вообще-то, это уровень прошлого века - откуда они таких программистов берут?
Возьме Форекс терминал Метатрейдер 4 или 5, они его сейчас для работы на бирже хотят приспособить.)) Далеко не лучший терминал. Квик лучше. Однако, в терминале Метатрейдер каждый советник работает в своем потоке и зависание одного никак не сказывается на работе других. Графики-индикаторы там тоже работают в свих потоках, и зависание какого либо графика и индикаторов в нем, никак не скажется на работе остальных.
Вообще, это все для роботостроения - полный абзац. В смысле идеологии построения АД3.5 был, пожалой вершиной мысли.