<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Функции обратного вызова не вызываются одновременно?]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Функции обратного вызова не вызываются одновременно? форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Fri, 17 Apr 2026 04:34:29 +0300</pubDate>
		<item>
			<title>Функции обратного вызова не вызываются одновременно?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message80541/topic9391/">Функции обратного вызова не вызываются одновременно?</a></b> <i>Т.е. отследить изнутри OnTrade выполнение другого OnOrder невозможно?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Ни в коем случае нельзя делать sleep внутри колбэков квика, они работают в том же потоке, что и сам квик. Ожидание событий должно быть в main. <br />
			<i>15.12.2025 14:39:20, funduk.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message80541/topic9391/</link>
			<guid>http://forum.quik.ru/messages/forum10/message80541/topic9391/</guid>
			<pubDate>Mon, 15 Dec 2025 14:39:20 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Функции обратного вызова не вызываются одновременно?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message80534/topic9391/">Функции обратного вызова не вызываются одновременно?</a></b> <i>Т.е. отследить изнутри OnTrade выполнение другого OnOrder невозможно?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Все функции обратного вызова работают в одном потоке, поэтому пока не завершится один не будут вызваны остальные. Проверяйте этот флаг в main. &nbsp; <br />
			<i>15.12.2025 00:59:27, Станислав.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message80534/topic9391/</link>
			<guid>http://forum.quik.ru/messages/forum10/message80534/topic9391/</guid>
			<pubDate>Mon, 15 Dec 2025 00:59:27 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Функции обратного вызова не вызываются одновременно?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message80533/topic9391/">Функции обратного вызова не вызываются одновременно?</a></b> <i>Т.е. отследить изнутри OnTrade выполнение другого OnOrder невозможно?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Допустим у меня есть заявка. Я хочу сразу, как только она сработает, прямо из функции OnTrade создать новую заявку. Чтобы убедиться, что заявка принята успешно, я дожидаюсь выполнения функции OnOrder, которая должна присвоить значение глобальной переменной. Т.е. схематично код выглядит так: <br /><br />OnTrade(trd)<br /> &nbsp; somevariable = false<br /> &nbsp; ord = ....<br /> &nbsp; sendTransaction(ord)<br /> &nbsp; repeat sleep(100) until somevariable=true<br /><br />OnOrder(ord)<br /> &nbsp; somevarialbe = true<br /><br />Этот код не работает, т.к. функция OnTrade виснет в ожидании OnOrder, а OnOrder не вызывается, пока не завершится OnTrade (проверял, если в OnTrade поставить return после нескольких итераций цикла, OnOrder сразу вызывается)<br /><br />Т.е. отследить изнутри OnTrade успешное выполнение новой заявки невозможно? <br />
			<i>14.12.2025 19:48:43, User12501.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message80533/topic9391/</link>
			<guid>http://forum.quik.ru/messages/forum10/message80533/topic9391/</guid>
			<pubDate>Sun, 14 Dec 2025 19:48:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
