<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме SetUpdateCallbackcallback в Lua C api - перезаписывает заказы. форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Tue, 07 Apr 2026 15:01:23 +0300</pubDate>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66689/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_ePBs62aa" href="/user/15613/" bx-tooltip-user-id="15613">Quikos</a> написал:<br />Но справедливости ради, в самом Lua скрипте - который непосредственно в квике запускаю - перезаписи не наблюдаю. А вот в Lua C api - наблюдаю. <br />=============<br />Раз в скрипте Lua не наблюдается, со стороны поддержки QUIK считаем вопрос закрытым <br />
			<i>10.11.2022 11:26:32, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66689/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66689/topic7688/</guid>
			<pubDate>Thu, 10 Nov 2022 11:26:32 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66302/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_bpfhd1Nc" href="/user/15613/" bx-tooltip-user-id="15613">Quikos</a>, У меня почти сразу не осталось ни малейших сомнений, что писать нужно на чистом Луа, который я в тот момент вообще в глаза не видел, а не на моём любимом Си, на котором я программирую десятки лет. Чуть позже я понял, что всё, что можно, нужно делать в потоке мейна. Ну и, наконец, завёл три стека для буферизации обмена данными с Квиком, после чего почти все проблемы исчезли - надеюсь, навсегда. Хотя появления новых версий боюсь ещё больше, чем раньше. <br />
			<i>15.10.2022 20:26:27, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66302/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66302/topic7688/</guid>
			<pubDate>Sat, 15 Oct 2022 20:26:27 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66301/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_hm3o1lfO" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /><noindex><a href="/user/15613/" target="_blank" rel="nofollow">Quikos</a></noindex>, Хотите получить работающий скрипт? Забудьте про это говно - с ним Вы не получите его НИКОГДА! <br /><br />=============<br />Ну хотелось бы конечно. А еще больше хотелось бы конечно нормальное API, но это из разряда фантастики конечно. <br />
			<i>15.10.2022 20:18:06, Quikos.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66301/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66301/topic7688/</guid>
			<pubDate>Sat, 15 Oct 2022 20:18:06 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66300/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_yqsCdqNJ" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /><noindex><a href="/user/15613/" target="_blank" rel="nofollow">Quikos</a></noindex>, Да потому, что ГОВНО этот CreateDataSource! Концептуально, идеологически, алгоритмически, фактически, и вообще относится к разделу &quot;Функции для работы с графиками&quot;. Что Вы вообще хотите узнать, наплодив чуть не половину новых веток за последнюю неделю-две? У Вас на 34 сообщения12 новых тем! Хотите получить работающий скрипт? Забудьте про это говно - с ним Вы не получите его НИКОГДА! Хотите поисследовать глюки Квика? Исследуйте на здоровье, только крайне желательно в ОДНОЙ ветке - я полагаю, что эта тема бесконечна и мало интересна кому-то, кроме Вас. Ещё что-то?<br />=============<br />Ну согласен, тем наплодил не мало :)<br />Но справедливости ради, в самом Lua скрипте - который непосредственно в квике запускаю - перезаписи не наблюдаю. А вот в Lua C api - наблюдаю. <br /><br />Думал, может кто сталкивался. <br />
			<i>15.10.2022 20:16:41, Quikos.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66300/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66300/topic7688/</guid>
			<pubDate>Sat, 15 Oct 2022 20:16:41 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66299/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_aRmcnMfg" href="/user/15613/" bx-tooltip-user-id="15613">Quikos</a>, Да потому, что ГОВНО этот CreateDataSource! Концептуально, идеологически, алгоритмически, фактически, и вообще относится к разделу &quot;Функции для работы с графиками&quot;. Что Вы вообще хотите узнать, наплодив чуть не половину новых веток за последнюю неделю-две? У Вас на 34 сообщения12 новых тем! Хотите получить работающий скрипт? Забудьте про это говно - с ним Вы не получите его НИКОГДА! Хотите поисследовать глюки Квика? Исследуйте на здоровье, только крайне желательно в ОДНОЙ ветке - я полагаю, что эта тема бесконечна и мало интересна кому-то, кроме Вас. Ещё что-то? <br />
			<i>15.10.2022 20:10:56, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66299/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66299/topic7688/</guid>
			<pubDate>Sat, 15 Oct 2022 20:10:56 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66298/topic7688/">SetUpdateCallbackcallback в Lua C api - перезаписывает заказы.</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			SetUpdateCallbackcallback в Lua C api - перезаписывает заказы:<br /><br />Из скрипта квика вызывается Сищная-функция: в нее соответственно автоматически передается или создается Lua-Стек: &nbsp; <br /><br /><br />
====code====
<pre>int my_callback(lua_State* L)
{
//Доп.пераметры извелкаем через lua_upvalueindex.

std::cout&#60;&#60;"interval_int:" &#60;&#60;interval_int &#60;&#60;std::endl;
}



void my_call_CreateDataSource(lua_State* L_, name_class_insrument, name_code_paper, interval_int)
{
lua_getglobal(L, "CreateDataSource");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

lua_pushstring(L,_ name_class_insrument);&nbsp;&nbsp;&nbsp;&nbsp;
lua_pushstring(L_, name_code_paper);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
lua_pushnumber(L_, interval_int);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

int status_lua_pcall = lua_pcall(L, 3, 2, 0); 



my_call_SetUpdateCallback(L_, my_callback, name_class_insrument, name_code_paper, interval_int);&nbsp;&nbsp;&nbsp;&nbsp;//Вызываем SetUpdateCallback и передаем в нее функцкиб обратного вызова и доп.параметры.
}


int ruc_cpp(lua_State* L_main)
{



lua_State* L_1 = lua_newthread(L_main);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Создаю "поток" связанный с главным стеком.
lua_State* L_2 = lua_newthread(L_main);


my_call_CreateDataSource(L_1 , "TQBR", "GAZP", "INTERVAL_H2");
my_call_CreateDataSource(L_2 , "TQBR", "GAZP", "INTERVAL_H4");






&nbsp;&nbsp;&nbsp;&nbsp;//-----------------------------------------------
&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &#60; 1000000; i++)
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::this_thread::sleep_for(std::chrono::milliseconds(100)); 
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;//-----------------------------------------------
}</pre>
=============
<br /><br />Приведенный код частично условный, чтобы не загромождать кодом страницу.<br /><br />Но суть в том, что - я создаю два новых &quot;потока&quot; от главного Луа-стека:<br />-Вызываю для каждого из двух созданных &quot;потоков&quot; - функцию CreateDataSource и навешиваю колбек через SetUpdateCallback.<br />-Первый и примерно второй и третий - колбеки - выводят интервал &quot;INTERVAL_H2&quot; - то есть это тот интервал, который я запросил первым у CreateDataSource...<br />-НО! Как только вызывается второй CreateDataSource для второго &quot;потока&quot; и навешивается callback - после этого любой вызываемый callback приходит только с интервалом &quot;INTERVAL_H4&quot; - что соотвевует второму вызову CreateDataSource - ТО ЕСТЬ произошло, как бы затирание подписки на колбек...<br />-НО ПОЧЕМУ ? Ведь я создал два разных &quot;потока&quot; которые хоть и связаныс основным луа-стеком, но сами обладают свои стеком, в который я и записываю результа от CreateDataSource.<br /><br />Что то не понятно. <br />
			<i>15.10.2022 19:27:44, Quikos.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66298/topic7688/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66298/topic7688/</guid>
			<pubDate>Sat, 15 Oct 2022 19:27:44 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
