<?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>Mon, 18 May 2026 05:23:37 +0300</pubDate>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message80446/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_D3XD8pO0" href="/user/16851/" bx-tooltip-user-id="16851">SergeyCS</a> написал:<br /><noindex><a href="/user/15768/" target="_blank" rel="nofollow">Alexander</a></noindex>, по-моему, вы говорили, что колбэк может начать работу, пока не отработал предыдущий колбек (оба исполняемые в одном потоке), не так? Может быть я не правильно понял. Как тогда разруливать последовательный вывод в консоль, не создавая промежуточного механизма упорядочивания строк, готовых к печати?<br />=============<br />Не прошло и пол года <img src="http://forum.quik.ru/upload/main/smiles/5/icon_biggrin.png" border="0" data-code=":lol:" data-definition="SD" alt=":lol:" style="width:16px;height:16px;" title="Широкая улыбка" class="bx-smile" /> Не там не так. Поток колбэков, он последовательно выполняет колбэки. Но &quot;каша&quot; цветов даже из колбэков в консоле возможно была, когда использовались разные способы вывода в консоль(не через одну и ту же функцию в DLL для всех - и для скриптов и для колбэков). Внутри колбэков возможно тоже были разные способы вывести в консоль(могли быть разные очереди внутри ОС и сишной CRT), я уже не помню точно всех нюансов. Но решение в любом случае - использовать одну и ту же функцию в одном месте и использовать её всеми, кто пишет в консоль с учётом синхронизации потоков колбэка и скрипта. <br />
			<i>08.12.2025 22:06:45, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message80446/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message80446/topic6669/</guid>
			<pubDate>Mon, 08 Dec 2025 22:06:45 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message78228/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_57moL9E4" href="/user/15768/" bx-tooltip-user-id="15768">Alexander</a>, по-моему, вы говорили, что колбэк может начать работу, пока не отработал предыдущий колбек (оба исполняемые в одном потоке), не так? Может быть я не правильно понял. Как тогда разруливать последовательный вывод в консоль, не создавая промежуточного механизма упорядочивания строк, готовых к печати? <br />
			<i>23.03.2025 17:37:26, SergeyCS.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message78228/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message78228/topic6669/</guid>
			<pubDate>Sun, 23 Mar 2025 17:37:26 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77652/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_1rNXOTiP" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Делайте как хотите.<br />=============<br />В принципе уже всё работает как нужно, цель достигнута.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_CPkycNFx" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Рассказал Вам свой опыт<br />=============<br />Рассказать про опыт это конечно хорошо. Вот только после рассказа я задал Вам по вашему же опыту 2 вопроса, ответа Вы не дали. <br />
			<i>12.02.2025 12:10:24, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77652/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77652/topic6669/</guid>
			<pubDate>Wed, 12 Feb 2025 12:10:24 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77644/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<noindex><a href="https://forum.quik.ru/user/15768/" target="_blank" rel="nofollow">Alexander</a></noindex>,<br />Не стремлюсь Вас в чем-то убедить или спорить с Вами. <br />-------------------------<br />Рассказал Вам свой опыт, так как Вы задали вопрос на форуме. <br />------------------------------------<br />Делайте как хотите. <br />
			<i>12.02.2025 06:19:57, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77644/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77644/topic6669/</guid>
			<pubDate>Wed, 12 Feb 2025 06:19:57 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77640/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Вот так получается после синхронизации консоли. <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=12408&" width="1815" height="891" /><br /><i>11.02.2025 20:23:15, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77640/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77640/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 20:23:15 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77639/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_BXitMj1X" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Вы плохо изучали теорию.Повторю еще раз. Синхронизируют не код, а общие данные. &nbsp;Функция принт - это код.---------------------------Зачем Вы выводите в консоль? Выводивыводите в лог файл и будет вам счастье. Лог файл позволяет анализировать ошибки и логику выполнения программы при длительном тестировании софта.Например , тестировал скрипт на QUIK 6 часов. &nbsp;При интенсивном потоке данных или длительном тестировании &nbsp;от консоли мало толку. -------------------------Чтобы при выводе на консоль ничего не съедалось надо ставить задержку после оператора вывода. Обычно sleep(10) &nbsp;достаточно.<br />=============<br />1) Вот только не надо мне про плохо теорию. Синхронизируется никакой не код, а общий ресурс - в данном случае это консоль. Не надо рассматривать данные только чисто как некие переменные, массивы и т.п. В моём конкретном случае делается то что нужно именно мне. Без синхронизации такой эффект я не получу. Если иными словами, могу и по другому объяснить - консоль это по сути буфер, буфер это данные, что там винда делает с этим буфером - не важно. Но суть такая же. Вам интересно услышать, что нужно синхронизировать данные общие, пожалуйста - данные это буфер консоли. Какие ещё тут могут быть вопросы?<br />2) Лог файлы ведутся на каждый счёт помимо консоли, а как же без них то??? При желании ведение их легко включается и отключается, но консоль нужна чисто для текущей визуализации происходящего всего, что крутится внутри одного экземпляра квика.<br />3) Вот только задержки со слипом после вывода это маразм какой-то. Всё работать должно без всяких слипов.<br />4) И да, функция принт это код, никто не спорит, но только синхронизируется не функция принт, а доступ её или их к общему ресурсы - буферу консоли. <br />
			<i>11.02.2025 20:10:46, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77639/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77639/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 20:10:46 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77638/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_4EMCjzcx" href="/user/15768/" bx-tooltip-user-id="15768">Alexander</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/62/" target="_blank" rel="nofollow">nikolz</a></noindex> написал:<br />Возможно не понял, но полагаю что Вы ошибаетесь.---------------------------Синхронизировать потоки надо при обращении их общим данным. -------------------------Четыре различных квика не имеют общих данных. Поэтому непонятно, что Вы пытаетесь синхронизировать.--------------------------DLL &nbsp;- это не данные а код.Не надо синхронизировать потоки при обращении к коду.-----------------------Не надо синхронизировать потоки при обращении к константам.--------------------- &nbsp;Смысл синхронизации в том, что в момент чтения данных одним потоком, второй их непредсказуемо изменит.<br />=============<br /> Да не поняли. Теорию знаю. По DLL тоже, и что и как там и в каком контексте работает, и переменные общие и т.п. Мне синхронизировать нужно работу вывода в консоль. Функции принтов есть в DLL и есть варианты, чтобы они разным цветом печатала в консоли есть функции и для скрипта - для захвата секции и много там ещё чего разного. Даже например внутри одного квика, допустим один поток колбэк выводит в консоль цветной текст &nbsp;- своим цветом последовательно по ходу работы функции принт за принтом. Далее этот поток прерывется и запускается другой поток, который тоже последовательно выводит в консоль своим цветом принт за принтом по ходу работы его функции. Что будет? Будет каша разноцветных принтов в перемешку, да ещё и цвета возможно сбиваться будут. Общие данные - захват консоли на время работы функций потока. Консоль и есть общий ресурс. Функции колбэка быстрые и захватывают консоль в начале функции и освобождают в конце, весь их вывод в консоль одним цветом получается, для каждого колбэка свой цвет, другой поток ждёт и не может ничего вывести пока колбэк не отработает полностью. Т.е. даже когда прерывается поток колбэка и запускается основной - это не страшно, основной кашу не сделает, ибо ждёт, потом возврат в колбэк и он продолжает свой цветной вывод своим тем же цветом. Отработал отпустил. Потом уже основной поток может продолжить и печатать своим цветом. У основного потока каждый принт - захват и освобождение консоли для своего цвета принта через захват секции(не в начале и в конце функции(как у колбэка) в которой принты основного потока &nbsp; - так можно бы было, но кое где логика не позволяет ибо ждёт результата колбэка и можно зависнуть, когда один захватит секцию и ждёт данных от колбэка, а колбэк не может захватить секцию, либо не логика, а просто нельзя тормозить надолго всю функцию основного потока по захвату консоли, ибо колбэки хрен тогда отработают, поэтому захват только на время работы одного принта основного потока). При таком построении каждый колбэк отписывает в консоль своим цветом даже если его прерывают, ну и основной поток спокойно себе печатает своими цветами и не пересекаются их выводы с выводами колбэка. Без этого такая каша, что даже выводы разных колбэков пересекаются, не что что с принтами основного потока и такое читать просто жопа.<br />=============<br />Вы плохо изучали теорию.<br />Повторю еще раз. Синхронизируют не код, а общие данные. &nbsp;Функция принт - это код.<br />---------------------------<br />Зачем Вы выводите в консоль? <br />Выводивыводите в лог файл и будет вам счастье. <br />Лог файл позволяет анализировать ошибки и логику выполнения программы при длительном тестировании софта.<br />Например , тестировал скрипт на QUIK 6 часов. &nbsp;<br />При интенсивном потоке данных или длительном тестировании &nbsp;от консоли мало толку. <br />-------------------------<br />Чтобы при выводе на консоль ничего не съедалось надо ставить задержку после оператора вывода. Обычно sleep(10) &nbsp;достаточно. <br />----------------------- <br />
			<i>11.02.2025 19:42:44, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77638/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77638/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 19:42:44 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77637/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_va3zqE1t" href="/user/16011/" bx-tooltip-user-id="16011">paluke</a> написал:<br />Сожрались символы: io.output(&#39;CONOUT$&#39;) io.input(&#39;CONIN$&#39;)<br />=============<br />Да с этого начинал. Так делал. У меня есть DDL-ли и они все тоже печатают в консоль. Консоль одна на весь процесс квика. Печатают в консоль все - и основной поток с его функциями, и колбэки и функции, которые лезут в DLL из нутри самой DLL и сама DLL. Как там винда это регулирует хрен её знает. У неё там видимо есть общая очередь для всех тех кто в эту консоль пишет и вот как то нихрена не синхронно в эту очередь всё попадпет. Тоесть ждёшь той последовательности вывода принтов от всех, к какой они делаются шаг за шагом &nbsp;и с учётом ныряния в DLL, а получается не так - идёт перемешка. То что перемешка с колбэком то это понятно может, но и просто выводы из скрипта с выводами функций, что заходят в DLL перемешка получается не в той последовательности как вызывается почему-то.Например в скрипте вывел в консоль, потом только идёт вызов функции из DLL, которя тоже выводит в консоль и должны принты идти так, что сначаля я должен увидеть в консоли вывод из скрипта, т.к. он первый напечатал, а потом уже из функции, т.к. она вызвалась позже и печатать в консоль позже должна, но не всегда именно так выходит! Поэтому было принято делать вывод в консоль только из одного места - только из самой DLL. Для всех! DLL сама изнутри туда пишет. Всё, что из скрипта идёт - через принт, который находится внутри DLL. Когда начал делать так, то всё стало работать синхронно в своей последовательности. <br />
			<i>11.02.2025 18:53:13, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77637/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77637/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 18:53:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77636/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Q5y1H8GM" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Возможно не понял, но полагаю что Вы ошибаетесь.---------------------------Синхронизировать потоки надо при обращении их общим данным. -------------------------Четыре различных квика не имеют общих данных. Поэтому непонятно, что Вы пытаетесь синхронизировать.--------------------------DLL &nbsp;- это не данные а код.Не надо синхронизировать потоки при обращении к коду.-----------------------Не надо синхронизировать потоки при обращении к константам.--------------------- &nbsp;Смысл синхронизации в том, что в момент чтения данных одним потоком, второй их непредсказуемо изменит.<br />=============<br />Да не поняли. Теорию знаю. По DLL тоже, и что и как там и в каком контексте работает, и переменные общие и т.п. Мне синхронизировать нужно работу вывода в консоль. Функции принтов есть в DLL и есть варианты, чтобы они разным цветом печатала в консоли есть функции и для скрипта - для захвата секции и много там ещё чего разного. Даже например внутри одного квика, допустим один поток колбэк выводит в консоль цветной текст &nbsp;- своим цветом последовательно по ходу работы функции принт за принтом. Далее этот поток прерывется и запускается другой поток, который тоже последовательно выводит в консоль своим цветом принт за принтом по ходу работы его функции. Что будет? Будет каша разноцветных принтов в перемешку, да ещё и цвета возможно сбиваться будут. Общие данные - захват консоли на время работы функций потока. Консоль и есть общий ресурс. Функции колбэка быстрые и захватывают консоль в начале функции и освобождают в конце, весь их вывод в консоль одним цветом получается, для каждого колбэка свой цвет, другой поток ждёт и не может ничего вывести пока колбэк не отработает полностью. Т.е. даже когда прерывается поток колбэка и запускается основной - это не страшно, основной кашу не сделает, ибо ждёт, потом возврат в колбэк и он продолжает свой цветной вывод своим тем же цветом. Отработал отпустил. Потом уже основной поток может продолжить и печатать своим цветом. У основного потока каждый принт - захват и освобождение консоли для своего цвета принта через захват секции(не в начале и в конце функции(как у колбэка) в которой принты основного потока &nbsp; - так можно бы было, но кое где логика не позволяет ибо ждёт результата колбэка и можно зависнуть, когда один захватит секцию и ждёт данных от колбэка, а колбэк не может захватить секцию, либо не логика, а просто нельзя тормозить надолго всю функцию основного потока по захвату консоли, ибо колбэки хрен тогда отработают, поэтому захват только на время работы одного принта основного потока). При таком построении каждый колбэк отписывает в консоль своим цветом даже если его прерывают, ну и основной поток спокойно себе печатает своими цветами и не пересекаются их выводы с выводами колбэка. Без этого такая каша, что даже выводы разных колбэков пересекаются, не что что с принтами основного потока и такое читать просто жопа. <br />
			<i>11.02.2025 18:31:25, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77636/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77636/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 18:31:25 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77604/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_cjsLFhoK" href="/user/15768/" bx-tooltip-user-id="15768">Alexander</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/62/" target="_blank" rel="nofollow">nikolz</a></noindex> написал:<br />мьютексы излишне использовать, &nbsp;так как всего два потока.Ранее уже говорил, что это решается гораздо проще через Event. &nbsp;<br />=============<br /> Если рассматривать вариант использования только одного экземпляра квика, то да. Но вот у меня, например, на данный момент рабочих целых 4 варианта самостоятельных квиков. Все они используют в работе всегда одну и ту же DLL, которая обеспечивает мне консоль для вывода, ну и разные функции для работы с этой консолью, в том числе и цветной вывод. Для цветного вывода хош-не хош нужна синхронизация, иначе всё идёт в перемешку, хоть и разным цветом, что очень неудобно воспринимать, хотя и можно смириться с этим, но я решил не мириться. Так вот, коли 4 квика, то по сути это уже и 4 разных процесса. И поэтому либо мьютекс нужен, либо быстрая критическая секция. Но секция одна на разные процессы не пойдёт. Я выбрал для себя в реализации именно секции, но приходится хранить массив из секций (для каждого потока своя секция), которые инициализируются при подключении процесса в DLL. Сейчас всё работает как положено. Ну пришлось чуток добавить кода, но оно того стоит думаю.<br />=============<br />Возможно не понял, но полагаю что Вы ошибаетесь.<br />---------------------------<br />Синхронизировать потоки надо при обращении их общим данным. <br />-------------------------<br />Четыре различных квика не имеют общих данных. Поэтому непонятно, что Вы пытаетесь синхронизировать.<br />--------------------------<br />DLL &nbsp;- это не данные а код.Не надо синхронизировать потоки при обращении к коду.<br />-----------------------<br />Не надо синхронизировать потоки при обращении к константам.<br />--------------------- &nbsp;<br />Смысл синхронизации в том, что в момент чтения данных одним потоком, второй их непредсказуемо изменит. <br />
			<i>11.02.2025 06:22:20, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77604/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77604/topic6669/</guid>
			<pubDate>Tue, 11 Feb 2025 06:22:20 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77599/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Сожрались символы: <br />io.output(&#39;CONOUT$&#39;)<br /> io.input(&#39;CONIN$&#39;) <br />
			<i>10.02.2025 15:22:21, paluke.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77599/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77599/topic6669/</guid>
			<pubDate>Mon, 10 Feb 2025 15:22:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77598/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Кстати о консоли без dll:
====code====
<pre>package.loadlib('kernel32.dll','AllocConsole')(true)
io.output('CONOUT$')
io.input('CONIN$')
</pre>
=============
<br />теперь можно читать из io.input и писать в io.output<br />в конце надо закрыть потоки и аналогичным способом вызвать FreeConsole <br />
			<i>10.02.2025 15:19:24, paluke.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77598/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77598/topic6669/</guid>
			<pubDate>Mon, 10 Feb 2025 15:19:24 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77597/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_zCQZ3mMU" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Прикольно, что недавно реализовал работу этих потоков без элементов ОС синхронизации.Работает существенно быстрее даже относительно Event.<br />=============<br />На чём основана реализация? <br />
			<i>10.02.2025 14:31:30, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77597/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77597/topic6669/</guid>
			<pubDate>Mon, 10 Feb 2025 14:31:30 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77596/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Cvcy3Xa3" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />Ранее уже говорил, что это решается гораздо проще через Event. <br />=============<br />Есть ссылка почитать про это на этом форуме? <br />
			<i>10.02.2025 14:30:40, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77596/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77596/topic6669/</guid>
			<pubDate>Mon, 10 Feb 2025 14:30:40 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77595/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_yf6W82j5" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />мьютексы излишне использовать, &nbsp;так как всего два потока.Ранее уже говорил, что это решается гораздо проще через Event. &nbsp;<br />=============<br />Если рассматривать вариант использования только одного экземпляра квика, то да. Но вот у меня, например, на данный момент рабочих целых 4 варианта самостоятельных квиков. Все они используют в работе всегда одну и ту же DLL, которая обеспечивает мне консоль для вывода, ну и разные функции для работы с этой консолью, в том числе и цветной вывод. Для цветного вывода хош-не хош нужна синхронизация, иначе всё идёт в перемешку, хоть и разным цветом, что очень неудобно воспринимать, хотя и можно смириться с этим, но я решил не мириться. Так вот, коли 4 квика, то по сути это уже и 4 разных процесса. И поэтому либо мьютекс нужен, либо быстрая критическая секция. Но секция одна на разные процессы не пойдёт. Я выбрал для себя в реализации именно секции, но приходится хранить массив из секций (для каждого потока своя секция), которые инициализируются при подключении процесса в DLL. Сейчас всё работает как положено. Ну пришлось чуток добавить кода, но оно того стоит думаю. <br />
			<i>10.02.2025 14:22:16, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77595/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77595/topic6669/</guid>
			<pubDate>Mon, 10 Feb 2025 14:22:16 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77550/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_3vmZFoU8" href="/user/15768/" bx-tooltip-user-id="15768">Alexander</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/62/" target="_blank" rel="nofollow">nikolz</a></noindex> написал:<br /> &nbsp;<br />====quote====<br /> <noindex><a href="/user/2047/" target="_blank" rel="nofollow">Станислав</a></noindex> &nbsp;написал:<br />В скриптах используются &nbsp;всего 2 потока , один для колбэков и один в main. <br /><br />В main для каждого скрипта создается отдельный поток, а вот колбэки находятся в некой очереди и вызываются синхронно, т.е. каждый колбэк ждет возвращения управления перед вызовом следующего. <br /><br /><br />Из-за этого имеем 2 особенности:<br />1. Нет нужды синхронизировать колбэки.<br />2. Надолго блокировать или производить тяжелые расчеты в колбэках не стоит, это приводит к подвисанию всех скриптов и даже терминала. <br /><br /><br />Если я ошибаюсь, поправьте.<br />=============<br /> &nbsp;немного поправлю. <br />Для колбеков не создается специально новый поток. <br />Колбеки вызываются в VMLua, которая создается в основном потоке терминала QUIK.<br />---------------------------<br />Функция main запускается в отдельном потоке, <br />в котором создается VMLua, дочерняя к VMLua колбеков. &nbsp;<br />=============<br /> Да похоже как-то так и есть. Факт только один - надо синхронизировать поток main() с потоком колбэков, кто бы его не запускал. Можно конечно поюзать всякие процесс мониторы и т.п., посмотреть процессы и их потоки, но и так понятно по вызовам стало, что main() и колбэки живут в разных потоках и что колбэки вызываются последовательно. Всем спасибо за ответы.<br />=============<br />мьютексы излишне использовать, &nbsp;так как всего два потока.<br />Ранее уже говорил, что это решается гораздо проще через Event. &nbsp;<br />------------------ <br />Прикольно, что недавно реализовал работу этих потоков без элементов ОС синхронизации.<br />Работает существенно быстрее даже относительно Event. <br />
			<i>07.02.2025 14:04:43, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77550/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77550/topic6669/</guid>
			<pubDate>Fri, 07 Feb 2025 14:04:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77549/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_0jRhlzCe" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/2047/" target="_blank" rel="nofollow">Станислав</a></noindex> написал:<br />В скриптах используются &nbsp;всего 2 потока , один для колбэков и один в main. <br /><br />В main для каждого скрипта создается отдельный поток, а вот колбэки находятся в некой очереди и вызываются синхронно, т.е. каждый колбэк ждет возвращения управления перед вызовом следующего. <br /><br /><br />Из-за этого имеем 2 особенности:<br />1. Нет нужды синхронизировать колбэки.<br />2. Надолго блокировать или производить тяжелые расчеты в колбэках не стоит, это приводит к подвисанию всех скриптов и даже терминала. <br /><br /><br />Если я ошибаюсь, поправьте.<br />=============<br /> немного поправлю. <br />Для колбеков не создается специально новый поток. <br />Колбеки вызываются в VMLua, которая создается в основном потоке терминала QUIK.<br />---------------------------<br />Функция main запускается в отдельном потоке, <br />в котором создается VMLua, дочерняя к VMLua колбеков. &nbsp;<br />=============<br />Да похоже как-то так и есть. Факт только один - надо синхронизировать поток main() с потоком колбэков, кто бы его не запускал. Можно конечно поюзать всякие процесс мониторы и т.п., посмотреть процессы и их потоки, но и так понятно по вызовам стало, что main() и колбэки живут в разных потоках и что колбэки вызываются последовательно. Всем спасибо за ответы. <br />
			<i>07.02.2025 13:18:44, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77549/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77549/topic6669/</guid>
			<pubDate>Fri, 07 Feb 2025 13:18:44 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77548/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_97yWQDaz" href="/user/2047/" bx-tooltip-user-id="2047">Станислав</a> написал:<br />В скриптах используются &nbsp;всего 2 потока , один для колбэков и один в main. <br /><br />В main для каждого скрипта создается отдельный поток, а вот колбэки находятся в некой очереди и вызываются синхронно, т.е. каждый колбэк ждет возвращения управления перед вызовом следующего. <br /><br /><br />Из-за этого имеем 2 особенности:<br />1. Нет нужды синхронизировать колбэки.<br />2. Надолго блокировать или производить тяжелые расчеты в колбэках не стоит, это приводит к подвисанию всех скриптов и даже терминала. <br /><br /><br />Если я ошибаюсь, поправьте.<br />=============<br />Да, потестирвал. Пришёл к такому же выводу. Колбэки вызываются последовательно все какие есть из всех запущенных скриптов. Синхронизация их между собой не нужна. main() и функции, которые она вызывает - это отдельный поток. Поток main() и поток колбэков синхронизирую между собой через критическую секцию в DLL. Сейчас всё отлично работает в пределах одного процесса. Далее сделаю либо через мьютексы для разных процессов, которые используют DLL, либо в DLL буду делать массив - открывать каждому процессу свою критическую секцию при подключении к DLL, чтобы каждый процесс использовал свою для своих потоков.<br />И да, кто хочет так же использовать именно критические секции - не забывайте, что каждому процессу - своя секция и что сколько раз поток зашёл в секцию(а он может входить в неё последовательно подряд несколько раз без проблем), то столько же раз он должен потом из неё и выйти. У меня возникала странная ситуация - видимо когда вылетал по ошибке, не успел покинуть секцию поток колбэков, после этого при перезапуске скрипта функция из main() заходила и покидала секцию через вызов другой функции, потом в секцию заходил и покидал её поток колбэков и вот после этого поток main() уже зайти в секцию не мог. Звучит странно, ведь первый раз main() в секцию всё-таки заходил. При этом исключено, что поток колбэков где-то мог дополнительно не покинуть секцию. Понять долго не мог что не так работает. Тестировал и вставлял принты везде где только можно - везде вход - выход, а поток main() со второго раза зайти не может! После перезагрузки, когда нет вылетов всё заработало без проблем. <br />
			<i>07.02.2025 13:05:48, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77548/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77548/topic6669/</guid>
			<pubDate>Fri, 07 Feb 2025 13:05:48 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77512/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			и Да, синхронизировать надо потоки, а не колбеки. <br />
			<i>05.02.2025 11:52:29, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77512/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77512/topic6669/</guid>
			<pubDate>Wed, 05 Feb 2025 11:52:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77511/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gj4B7oD0" href="/user/2047/" bx-tooltip-user-id="2047">Станислав</a> написал:<br />В скриптах используются &nbsp;всего 2 потока , один для колбэков и один в main. <br /><br />В main для каждого скрипта создается отдельный поток, а вот колбэки находятся в некой очереди и вызываются синхронно, т.е. каждый колбэк ждет возвращения управления перед вызовом следующего. <br /><br /><br />Из-за этого имеем 2 особенности:<br />1. Нет нужды синхронизировать колбэки.<br />2. Надолго блокировать или производить тяжелые расчеты в колбэках не стоит, это приводит к подвисанию всех скриптов и даже терминала. <br /><br /><br />Если я ошибаюсь, поправьте.<br />=============<br />немного поправлю. <br />Для колбеков не создается специально новый поток. <br />Колбеки вызываются в VMLua, которая создается в основном потоке терминала QUIK.<br />---------------------------<br />Функция main запускается в отдельном потоке, <br />в котором создается VMLua, дочерняя к VMLua колбеков. &nbsp; <br />
			<i>05.02.2025 11:48:50, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77511/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77511/topic6669/</guid>
			<pubDate>Wed, 05 Feb 2025 11:48:50 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77502/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			В скриптах используются<U> всего 2 потока</U>, один для колбэков и один в main. <br /><br />В main для каждого скрипта создается отдельный поток, а вот колбэки находятся в некой очереди и вызываются синхронно, т.е. каждый колбэк ждет возвращения управления перед вызовом следующего. <br /><br /><br />Из-за этого имеем 2 особенности:<br />1. Нет нужды синхронизировать колбэки.<br />2. Надолго блокировать или производить тяжелые расчеты в колбэках не стоит, это приводит к подвисанию всех скриптов и даже терминала. <br /><br /><br />Если я ошибаюсь, поправьте. <br />
			<i>04.02.2025 22:43:43, Станислав.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77502/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77502/topic6669/</guid>
			<pubDate>Tue, 04 Feb 2025 22:43:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message77499/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			То, что колбэки могут приходить в разной последовательности(интересуют OnTrade, OnOrder, OnTransReply), а не в строго определённой это ещё ладно. Но вот было замечено, что работа одного колбэка может запросто прерываться, может начать выполняться другой колбэк или функция, вызываемая из main. Всё это приводит к тому, что в консоли получается каша из принтов от разных функций и колбэков. Сначла решил просто выводить принты от разных колбэков разным цветом в консоль- типа хоть как-то видно будет какой принт от кого, хоть и перемешаны они в консоли. Потом решил сделать так, чтобы пока не выполнится один колбэк полностью, другой колбэк не мог бы выводить принты в консоль. Внутри каждого колбэка в начале - вход в критическую секцию, в конце - выход из секции. Т.е. логика такая. Зашёл в колбэк - он сделал вход в секцию. Потом этот колбэк прерывается и квик запускает другой колбэк, который тоже пытается зайти в секцию, но не может, ибо она захвачена другим колбэком уже, т.е. он зайти не может, ждёт, пока секцию освободит первый колбэк и только потом продолжит своё управление. Но...вопрос: а дождётся ли он освобождения пока ждёт? Сможет ли квик пока тот ждёт прервать выполнение второго ожидающего колбэка и продолжить выполнение первого? Если да, то всё ОК. Первый освободит секцию, второй потом захватит её, отработает и завершится. Но не понятно как организована работа в квике по обработке колбэков. Толи в одном потоке, толи в разных, толи как-то по времени умудряется. Если в разных то проблем нет. Один поток тормознётся, пока другой отработает. Запускал простейший скрипт - выставит заявку, снять заявку. Вроде всё срабатывает и не зависает. Но может это пока просто потому, что именно так складывается и при прерывании одного колбэка другой просто не вызывается, а если вызовется, то зависнет. Может сталкивался кто с подобным или подскажет как вызываются колбэки квиком? А то зависнуть может же при определённых условиях. Иными словами вопрос такой: заход в колбэк, колбэк пытается войти в критическую секцию, она занята, он тормозится, ждёт освобождения секции, квик прервёт этот колбэк и запустит исполнение другого колбэка или функции, которые освободят критическую секцию, или зависнет? <br />
			<i>04.02.2025 19:38:54, Alexander.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message77499/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message77499/topic6669/</guid>
			<pubDate>Tue, 04 Feb 2025 19:38:54 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60589/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_fW7GOzTs" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />Сложность называется интернет. <br />=============<br />Понял, спасибо. <br />
			<i>23.12.2021 20:45:15, Коc.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60589/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60589/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 20:45:15 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60588/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_pHg6RmJ7" href="/user/15354/" bx-tooltip-user-id="15354">Коc</a> написал:<br />время <br />=============<br />Сделки приедут с той временной меткой, в которую случились. Но, естественно, приедут чуть позже этого времени. В нормальных условиях о секундных задержках речь не идет, десятки миллисекунд, но в при плохом канале возможны и бОльшие задержки.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_jnui0kJN" href="/user/15354/" bx-tooltip-user-id="15354">Коc</a> написал:<br />техническая сложность<br />=============<br />Сложность называется интернет. Чтобы отправить что-то по сети, это что-то всегда режется на куски и каждый кусок отправляется сам по себе, при этом к нему приделывается сначала заголовок протокола приложения, потом заголовок протокола сети, потом заголовок пакета, потом заголовок канального уровня. Если резать на слишком мелкие куски, по сети будут ездить туда-сюда одни лишь заголовки. Поэтому крайне желательно подсобрать данных перед отправкой, а не каждый байт посылать отдельно. <br />
			<i>23.12.2021 20:42:08, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60588/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60588/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 20:42:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60587/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_URgXr6OH" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />количество в блоке зависит от интенсивности торгов.<br />=============<br />Вы про время в таблице сделок и время на сервере говорите, кажется вы это имеете в виду. <br />
			<i>23.12.2021 20:28:07, Коc.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60587/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60587/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 20:28:07 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60586/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_4Y7dRMjq" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />присылают блоком вот &nbsp;поэтому видите разом но с разным временем.<br />=============<br />Спасибо nikolz. Уточнить, присылают одним блоком, &nbsp;а время будет &nbsp;например 10:10:00 и 10:10:03 (разница 3 секунды). &nbsp;Т.е. ордера &nbsp;с временем 10:10:03 &nbsp;как бы отношения к предыдущим ордерам с временем 10:10:00 не имеют? &nbsp;Почему так сделано интересно, просто захотелось или есть какая то техническая сложность в этом. <br />
			<i>23.12.2021 20:22:55, Коc.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60586/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60586/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 20:22:55 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60585/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_8WRozdZw" href="/user/15354/" bx-tooltip-user-id="15354">Коc</a> написал:<br />Здравствуйте.<br />Кто может подсказать как идет поток ордеров в таблице обезличенных сделок, например одномоментно &nbsp;в 10:10:00 прошло 7 продаж (7 строк) 20 контрактов, 18, 15, 10 и 5. Эти 7 строк в ленте отображаются разом или каждая строчка по отдельности только очень быстро? &nbsp; &nbsp;<br />=============<br />присылают блоком вот &nbsp;поэтому видите разом но с разным временем.<br />количество в блоке зависит от интенсивности торгов.<br />----------------------- &nbsp;<br />исследовать реальную задержку можно сравнивая время сделок с временем сервера точного времени. <br />Попробуйте и увидите много интересного. &nbsp; <br />
			<i>23.12.2021 19:06:11, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60585/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60585/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 19:06:11 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message60583/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте.<br />Кто может подсказать как идет поток ордеров в таблице обезличенных сделок, например одномоментно &nbsp;в 10:10:00 прошло 7 продаж (7 строк) 20 контрактов, 18, 15, 10 и 5. Эти 7 строк в ленте отображаются разом или каждая строчка по отдельности только очень быстро? &nbsp; &nbsp; <br />
			<i>23.12.2021 15:57:52, Коc.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message60583/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message60583/topic6669/</guid>
			<pubDate>Thu, 23 Dec 2021 15:57:52 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57689/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_3Z1pSP7P" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a>, Дык бабло можно много на чём поднимать, но я лично предпочитаю на своих прыгающих свечах. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp; <br />
			<i>30.08.2021 11:43:46, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57689/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57689/topic6669/</guid>
			<pubDate>Mon, 30 Aug 2021 11:43:46 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Еще один вопрос про потоки</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57687/topic6669/">Еще один вопрос про потоки</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_a6Sok29h" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a>, хозяин барин. Чет вот вспомнил. Был интересный чел, математик кстати, обнаруживший вырождение распределения в многочастичном фильтре, принявший эффект за имманентное свойство рынка и, что забавно, поднявший на этом неплохо бабла. Где-то в 14 году вышла работа об этом эффекте, доказывающая, что он есть свойство самого фильтра. К сожалению, с челом уже нельзя пообщаться на эту тему по объективной причине, а было бы интересно его мнение теперь услышать. Это я к чему. Все йогурты могут быть полезны, пока горят достаточно далеко от. <br />
			<i>30.08.2021 11:21:32, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57687/topic6669/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57687/topic6669/</guid>
			<pubDate>Mon, 30 Aug 2021 11:21:32 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
