<?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>Wed, 20 May 2026 15:08:43 +0300</pubDate>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51879/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Скрипт с таблицей имеет очередь передачи сообщений - она же таблица в staticVаr, допустим. При возникновении события в таблице в эту очередь записывается информация. Как Вы и написали проблем с передачей нет.<br /><br />Другой скрип, смотрит на эту очередь и читает информацию, если в ней что-то появилось. Опрашивать, допустим по увеличению размера. Не такая и проблема выполнить что-то типа: last_count &lt; #Table<br /><br /><br />На самом деле, даже если это один скрипт, некоторые команды нежелательно исполнять в колбеке таблицы. А значит их надо передавать в дополнительный поток скрипта, через любую переменную видимого контекста. Это мало отличается от схемы с разделяемой переменной. Неэффективность будет только в том, что все события пойдут через очередь.<br /><br />Либо мы не понимаем друг-друга. <br />
			<i>18.01.2021 14:38:09, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51879/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51879/topic6143/</guid>
			<pubDate>Mon, 18 Jan 2021 14:38:09 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51878/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_MqCSDjbU" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br /> <br />====quote====<br />Легко давать советы не особенно вникая.)<br /> Передать колбэк не проблема только вот что бы принять его другим скриптом механизма прерывания и включения параллельного потока нет. Или вы предлагаете main() в цикле опрашивать переменную на случай наступления события?<br />=============<br /> Да, опрашивать по изменению количества в очереди. Собственно, это не такая и редка задача: Квик исполнитель, а интерфейс может быть в базе данных, на таблицах.<br />Ясно, что лучше написать прямую библиотеку, но раз ее нет, надо передавать команды по каналам связи.<br />=============<br />Попробую объяснить на пальцах.<br />В скрипте робота есть таблица в которой по дабл-клик на ячейку меняется значение некоторой переменной. <br />Таблица перенесена в другой скрипт. &nbsp;Что дальше?<br />Никаких проблем нет с обработкой клика и передачи этого события в первый скрипт в виде изменения содержимого общей для двух скриптов переменной. Вопрос как ее получить в первом скрипте?<br />Постоянно опрашивая изменение в цикле? Это значит, что в определенном месте обработки скрипта. Замечу, что в первом случае это обрабатывается в параллельном потоке. <br />
			<i>18.01.2021 14:20:04, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51878/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51878/topic6143/</guid>
			<pubDate>Mon, 18 Jan 2021 14:20:04 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51864/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br />Легко давать советы не особенно вникая.)<br /> Передать колбэк не проблема только вот что бы принять его другим скриптом механизма прерывания и включения параллельного потока нет. Или вы предлагаете main() в цикле опрашивать переменную на случай наступления события?<br />=============<br />Да, опрашивать по изменению количества в очереди. Собственно, это не такая и редка задача: Квик исполнитель, а интерфейс может быть в базе данных, на таблицах.<br />Ясно, что лучше написать прямую библиотеку, но раз ее нет, надо передавать команды по каналам связи. <br />
			<i>18.01.2021 10:02:25, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51864/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51864/topic6143/</guid>
			<pubDate>Mon, 18 Jan 2021 10:02:25 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51856/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_JA39k6Ey" href="/user/1717/" bx-tooltip-user-id="1717">Kolossi</a> написал:<br />Swerg &nbsp; огромное спасибо за библиотеку !!!<br />=============<br /><br />Рад, если помогло. Обращайтесь :) <br />
			<i>18.01.2021 08:30:08, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51856/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51856/topic6143/</guid>
			<pubDate>Mon, 18 Jan 2021 08:30:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51850/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Kolossi, возможно, подойдет вариант <br /><br /><noindex><a href="https://forum.quik.ru/messages/forum10/message34577/topic3492/#message34577" target="_blank" rel="nofollow">https://forum.quik.ru/messages/forum10/message34577/topic3492/#message34577</a></noindex><br /><br />У меня он когда-то работал.. Без цикла вообще. &nbsp; <br />
			<i>17.01.2021 22:34:37, Борис Гудылин.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51850/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51850/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 22:34:37 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51849/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_q9ceNOSD" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Если у Вас ячейки привязаны к конкретному скрипту (т.е. реакция на нее однозначно для скрипта №2), особой разницы нет, где событие прошло. Делаете очередь событий и передаете события с параметрами обратно в скрипт через тот же механизм. А скрипт уже, в свою очередь, опрашивает на предмет нового события из своей области обмена.<br />=============<br />Легко давать советы не особенно вникая.)<br /> Передать колбэк не проблема только вот что бы принять его другим скриптом механизма прерывания и включения параллельного потока нет. Или вы предлагаете main() в цикле опрашивать переменную на случай наступления события? <br />
			<i>17.01.2021 21:10:15, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51849/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51849/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 21:10:15 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51847/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_RInRXsGx" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a>, Лично у меня интерфейс с сервером отсутствует как класс. Интерфейс с Квиком ужат до предела, до пары-тройки утилит. А интерфейс с юзером имеет все возможности, которые вообще можно выжать из чистого Lua.<br /><br />Да как угодно &quot;эта группа формируется&quot;! Объект реакции на событие типа &quot;группа событий&quot; не может быть втиснут в очередь событий - здесь требуется именно стек очередей, поскольку все объекты этой очереди должны быть обработаны &quot;вне очереди&quot;. <br />
			<i>17.01.2021 15:09:34, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51847/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51847/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 15:09:34 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51845/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Раз необходимо иметь разные события для разных окон, то дайте имена этим событиям разные или сопровождайте их разным наборов параметров, чтобы обработчик понимал с чем имеет дело.<br /><br />А что касается интерфейса, &nbsp;то он может быть расположен на устройстве на Марсе. А сервер должен получить события, что пользователь инициировал и как-то прореагировать: ракету запустить или вернуть ответ в тот же интерфейс. Интерфейс и сервер (обработчик и т.д.) это не обязательно единое целое.<br /><br />Что касается групп событий, то здесь надо формализовать как эта группа формируется. Возможно на клиенте с интерфейсом надо сгруппировать по какому-то признаку и уже передать эту группу в очередь как единое целое. <br />
			<i>17.01.2021 15:02:08, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51845/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51845/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 15:02:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51844/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_wtD2Mofg" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a>, Оба-на! Я когда-то занимался диалоговыми программами, и у меня всегда имело ОГРОМНОЕ значение, где событие прошло! В частности, обработчики событий в главном и контекстном меню моего скрипта совершенно разные. Кроме того, &quot;очередь событий&quot; автоматически делает невозможной иметь объект реакции типа &quot;группа событий&quot;, что накладывает просто крест на хоть сколько-нибудь сложном диалоге. Наконец, обмен событиями между скриптами (тем более, на Lua) - это идеологический маразм, это не будет работать НИКОГДА! В крайнем (и далеко не лучшем <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" />) случае это будет служить ВЕЧНЫМ источником глюков. А глюков в Lua и без того более, чем достаточно. <br />
			<i>17.01.2021 14:11:29, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51844/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51844/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 14:11:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51843/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Если у Вас ячейки привязаны к конкретному скрипту (т.е. реакция на нее однозначно для скрипта №2), особой разницы нет, где событие прошло. Делаете очередь событий и передаете события с параметрами обратно в скрипт через тот же механизм. А скрипт уже, в свою очередь, опрашивает на предмет нового события из своей области обмена. <br />
			<i>17.01.2021 10:41:21, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51843/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51843/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 10:41:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51842/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Swerg &nbsp; огромное спасибо за библиотеку !!!<br />Все работает как хотелось. Дальше дело техники - передать цветовые коды и тп.<br /><br />К сожалению часть таблиц, которые хотелось бы вынести в общие, обрабатывают мышинный callback<br />и решения как его отдать из скрипта общей таблицы роботу с созданием параллельного потока я не вижу.<br /><br />Ну и ладно, и так хорошо. Еще раз спасибо. <br />
			<i>17.01.2021 09:26:05, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51842/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51842/topic6143/</guid>
			<pubDate>Sun, 17 Jan 2021 09:26:05 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51840/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_DvubTsFK" href="/user/82/" bx-tooltip-user-id="82">swerg</a> написал:<br /> <br />Один скрипт выводит все таблицы, включая &quot;сводную&quot;, другой кидает ему данные через <br /><br /> <br />====quote====<br /><noindex><a href="/user/3132/" target="_blank" rel="nofollow">Nikolay</a></noindex> написал:<br />Библиотеки обмена: раз - StaticVar от swerg &nbsp; <noindex><a href="https://quik2dde.ru/viewtopic.php?id=61" target="_blank" rel="nofollow">https://quik2dde.ru/viewtopic.php?id=61</a></noindex> &nbsp; два - luashare от toxa &nbsp; <noindex><a href="https://quik2dde.ru/viewtopic.php?id=306" target="_blank" rel="nofollow">https://quik2dde.ru/viewtopic.php?id=306</a></noindex> &nbsp;<br />=============<br /> <br />Ну или даже один скрипт выводит сводную таблицы, остальные ему кидают данные через указанные механизмы.<br />=============<br />Спасибо, буду пробовать. <br />
			<i>16.01.2021 21:41:59, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51840/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51840/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 21:41:59 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51839/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_3vEPCCEx" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br /><br />====quote====<br /><noindex><a href="/user/3132/" target="_blank" rel="nofollow">Nikolay</a></noindex> написал:<br />Если источник-приемник один, то достаточно в источнике открыть файл в режиме записи, а в приемнике в режиме чтения и просто проверять новые данные в этом файле через read("*l").<br />=============<br />Можно и так. Тогда отпадает необходимость в открытии/зактытии/удалении файлов, что затратно.<br />=============<br />При частой записи данных файл обмена может сильно разрастись. В этом случае есть сомнения в скорости сброса данных на диск.<br />Маленькие файлы кешируются в памяти операционной системой, а большие? Не получится ли &nbsp;так, что каждый новый flush будет дольше предыдущего?<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_s1ju9PjV" href="/user/3226/" bx-tooltip-user-id="3226">Игорь Б</a> написал:<br />Я делаю так же, только с одним файлом. Передатчик создает файл и пишет туда инфу. Приемник смотрит наличие этого файла. Для него это флаг, что можно читать свежую инфу. Он (приемник) ее читает и удаляет файл. Для передатчика отсутствие файла означает, что файл прочитан и можно создавать файл для передачи новой инфы. Если это и хуже варианта с двумя файлами, то интересно чем? &nbsp;<br />=============<br />Думаю, не хуже. Но в обоих случаях при одновременном открытии файла обмена несколькими источниками гипотетически часть данных может быть потеряна.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_5od6w7w0" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />файл - один, но для каждого скрипта выделяется собственное пространство (фиксированного объёма). Далее они читают и пишут только в свои зоны, а общий диспетчер (который эту таблицу формирует) ставит флаги "прочитано, можно писать следующую порцию".<br />=============<br />Вариант, заслуживающий внимания.<br /><br />Ещё вариант: читать/писать под локом. Файл один, открывается один раз, при остановке скрипта закрывается. Данные записываются в режиме изменения в начало файла, сообщение добивается нулями до фиксированной длины. <br />
			<i>16.01.2021 21:38:02, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51839/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51839/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 21:38:02 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51838/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_kw2Tp1Q5" href="/user/1717/" bx-tooltip-user-id="1717">Kolossi</a> написал:<br />Проверил. Нумерация окон меняется конкретно для каждого скрипта-увеличивается с каждым перезапуском начиная с запуска Квика.<br />Запустив два одинаковых скрипта при помощи перезапусков легко получил окна с одинаковыми идентификаторами.<br />Облом.<br />=============<br /><br />Один скрипт выводит все таблицы, включая "сводную", другой кидает ему данные через <br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_oBKZVtJA" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Библиотеки обмена: раз - StaticVar от swerg &nbsp;<noindex><a href="https://quik2dde.ru/viewtopic.php?id=61" target="_blank" rel="nofollow">https://quik2dde.ru/viewtopic.php?id=61</a></noindex> &nbsp;два - luashare от toxa &nbsp;<noindex><a href="https://quik2dde.ru/viewtopic.php?id=306" target="_blank" rel="nofollow">https://quik2dde.ru/viewtopic.php?id=306</a></noindex> <br />=============<br /><br />Ну или даже один скрипт выводит сводную таблицы, остальные ему кидают данные через указанные механизмы. <br />
			<i>16.01.2021 21:31:47, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51838/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51838/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 21:31:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51836/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br />А в других перечисленных вами вариантах ждать не будут?<br /><br />=============<br />Так смотря что ждать. <br />Если база данных, то смотрим какой уровень изоляции транзакции оная поддерживает. Можно сделать несколько таблиц для каждой пары (примерно как и с файлами). Писатель блокирует таблицу, другие таблицы доступны. Читатель читает те таблицы, что доступны.<br /><br />Если библиотеки обмена, то их авторы доступны.<br /><br />Если socket, то он по умолчанию блокирующий. Т.е. надо ждать. В книге Роберту Иерузалимски. «Программирование на языке Lua» есть пример Невытесняющая многонитевость.<br /><br /><br />named pipes позволяют сделать многопоточное подключение, к серверу. Хотя именованные каналы - это по сути файлы, только в памяти. <br />
			<i>16.01.2021 19:21:18, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51836/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51836/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 19:21:18 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51835/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_MovE10tf" href="/user/3226/" bx-tooltip-user-id="3226">Игорь Б</a>, По условию там вроде как МНОЖЕСТВО скриптов, и все они должны ПИСАТЬ, готовя сводную таблицу. Я вижу такое решение файл - один, но для каждого скрипта выделяется собственное пространство (фиксированного объёма). Далее они читают и пишут только в свои зоны, а общий диспетчер (который эту таблицу формирует) ставит флаги &quot;прочитано, можно писать следующую порцию&quot;. В любом случае, работа множества скриптов с обменом информацией через файл есть геморрой. <br />
			<i>16.01.2021 18:58:36, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51835/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51835/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 18:58:36 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51834/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_XdxGKFYM" href="/user/54/" bx-tooltip-user-id="54">Старатель</a>, <br />====quote====<br /><a class="blog-p-user-name" id="bp_vIRG6xD4" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />Второй файл как раз служит для писателей индикатором, что первый файл занят, и запись не возможна.Как только приёмник прочитает данные, он удаляет 2-й файл, что сигнализирует о возможности записи.Т.е. организуются синхронные запись/чтение.<br />=============<br />Я делаю так же, только с одним файлом. Передатчик создает файл и пишет туда инфу. Приемник смотрит наличие этого файла. Для него это флаг, что можно читать свежую инфу. Он (приемник) ее читает и удаляет файл. Для передатчика отсутствие файла означает, что файл прочитан и можно создавать файл для передачи новой инфы. Если это и хуже варианта с двумя файлами, то интересно чем? &nbsp; <br />
			<i>16.01.2021 18:42:52, Игорь Б.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51834/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51834/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 18:42:52 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51833/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_8dg9MLxz" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Конечно, все это для обмена большими объемами и несколькими источниками-потребителями. Если данных мало и они редки, то все это излишне.<br />=============<br />ТС задал вопрос по выводу данных в общую визуальную таблицу. Врядли там большие объёмы данных.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_3eWNo4Mv" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Если пара одна, то это приведет к тому, что все будут ждать пока он освободится.<br />=============<br />А в других перечисленных вами вариантах ждать не будут?<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_vmVibwHC" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Если источник-приемник один, то достаточно в источнике открыть файл в режиме записи, а в приемнике в режиме чтения и просто проверять новые данные в этом файле через read("*l").<br />=============<br />Можно и так. Тогда отпадает необходимость в открытии/зактытии/удалении файлов, что затратно. <br />
			<i>16.01.2021 18:29:46, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51833/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51833/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 18:29:46 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51832/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Для чтения. Записать одновременно в один файл с двух сторон, то еще занятие. Да, файл-флаг здесь решит проблему, чтоб все ждали пока он есть. А когда его нет, то все писатели одновременно ринутся писать в один тот-же файл.<br /><br />Если источник-приемник один, то достаточно в источнике открыть файл в режиме записи, а в приемнике в режиме чтения и просто проверять новые данные в этом файле через read(&quot;*l&quot;). Писатель записал, читатель их прочитал. Скрипт индикатору может спокойно так передавать информацию. <br />
			<i>16.01.2021 18:24:17, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51832/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51832/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 18:24:17 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51831/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_jlu1ZqSH" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/54/" target="_blank" rel="nofollow">Старатель</a></noindex> написал:<br />Второй файл как раз служит для писателей индикатором, что первый файл занят, и запись не возможна.<br />Как только приёмник прочитает данные, он удаляет 2-й файл, что сигнализирует о возможности записи.<br />Т.е. организуются синхронные запись/чтение.<br /><br />Кстати, ни разу не видел, блокировок файлов, одновременно открытых несколькими Lua-скриптами.<br />Если файл открыт другим приложением, то, да, было.<br />=============<br /> Блокировки видел, хоть lua и очень быстр в части работы с файлами. Если пара одна, то это приведет к тому, что все будут ждать пока он освободится. А если несколько, то приемник сможет переключаться между парами, чтобы не ждать.<br /><br />Конечно, все это для обмена большими объемами и несколькими источниками-потребителями. Если данных мало и они редки, то все это излишне.<br />=============<br />lua открывает файлы в разделяемом режиме. Поэтому блокировок не бывает. Файл нужно просто читать и проверять целостность данных. &nbsp; <br />
			<i>16.01.2021 18:00:18, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51831/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51831/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 18:00:18 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51830/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_2Wgs8fHh" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />Второй файл как раз служит для писателей индикатором, что первый файл занят, и запись не возможна.<br />Как только приёмник прочитает данные, он удаляет 2-й файл, что сигнализирует о возможности записи.<br />Т.е. организуются синхронные запись/чтение.<br /><br />Кстати, ни разу не видел, блокировок файлов, одновременно открытых несколькими Lua-скриптами.<br />Если файл открыт другим приложением, то, да, было.<br />=============<br />Блокировки видел, хоть lua и очень быстр в части работы с файлами. Если пара одна, то это приведет к тому, что все будут ждать пока он освободится. А если несколько, то приемник сможет переключаться между парами, чтобы не ждать.<br /><br />Конечно, все это для обмена большими объемами и несколькими источниками-потребителями. Если данных мало и они редки, то все это излишне. <br />
			<i>16.01.2021 17:54:45, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51830/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51830/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 17:54:45 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51829/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_oYhzUGvy" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Это надо для каждый пары источник-приемник создавать пару файлов. Как только несколько писателей, с двумя файлами может быть блокировка.<br />=============<br />Второй файл как раз служит для писателей индикатором, что первый файл занят, и запись не возможна.<br />Как только приёмник прочитает данные, он удаляет 2-й файл, что сигнализирует о возможности записи.<br />Т.е. организуются синхронные запись/чтение.<br /><br />Кстати, ни разу не видел, блокировок файлов, одновременно открытых несколькими Lua-скриптами.<br />Если файл открыт другим приложением, то, да, было. <br />
			<i>16.01.2021 17:47:45, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51829/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51829/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 17:47:45 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51827/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_2fV9Yh2O" href="/user/1717/" bx-tooltip-user-id="1717">Kolossi</a> написал:<br />Проверил. Нумерация окон меняется конкретно для каждого скрипта-увеличивается с каждым перезапуском начиная с запуска Квика.<br />Запустив два одинаковых скрипта при помощи перезапусков легко получил окна с одинаковыми идентификаторами.<br />Облом.<br />=============<br />жаль. Не сработало. <br />
			<i>16.01.2021 17:27:32, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51827/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51827/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 17:27:32 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51826/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_g1YKQwTd" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />Вот &nbsp;<noindex><a href="https://smart-lab.ru/blog/580999.php" target="_blank" rel="nofollow">тут</a></noindex> &nbsp;пример организации обмена с двумя файлами: 1-й файл для передачи данных, 2-й - пустой файл, служит флагом для индикации готовности данных к считыванию.<br />=============<br />Это надо для каждый пары источник-приемник создавать пару файлов. Как только несколько писателей, с двумя файлами может быть блокировка.<br />А приемник должен псевдо-асинхронно это читать. <br />
			<i>16.01.2021 16:58:36, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51826/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51826/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:58:36 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51825/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Cw0hMUs5" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br /> Вот &nbsp;<noindex><a href="https://smart-lab.ru/blog/580999.php" target="_blank" rel="nofollow">тут</a></noindex> &nbsp;пример организации обмена с двумя файлами: 1-й файл для передачи данных, 2-й - пустой файл, служит флагом для индикации готовности данных к считыванию.<br />=============<br />И я плавно приехал от идеи общей таблицы к необходимости замены hdd на ssd <br />
			<i>16.01.2021 16:46:11, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51825/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51825/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:46:11 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51824/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Проверил. Нумерация окон меняется конкретно для каждого скрипта-увеличивается с каждым перезапуском начиная с запуска Квика.<br />Запустив два одинаковых скрипта при помощи перезапусков легко получил окна с одинаковыми идентификаторами.<br />Облом. <br />
			<i>16.01.2021 16:36:19, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51824/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51824/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:36:19 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51823/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_zp9oJXGd" href="/user/1717/" bx-tooltip-user-id="1717">Kolossi</a> написал:<br />Номер окна выдает каждый раз следующий.16-17-18-19... и так по порядку каждый раз при убиении и запуске скрипта.<br />=============<br />Так и есть. При перезапуске скрипта идентификаторы новых окон увеличиваются.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_unXbdI8x" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a> написал:<br />Вариант 3 - файлы. Но взаимные блокировки будет проблемой.<br />=============<br />Вот <noindex><a href="https://smart-lab.ru/blog/580999.php" target="_blank" rel="nofollow">тут</a></noindex> пример организации обмена с двумя файлами: 1-й файл для передачи данных, 2-й - пустой файл, служит флагом для индикации готовности данных к считыванию. <br />
			<i>16.01.2021 16:24:47, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51823/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51823/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:24:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51822/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Однако сейчас проверил. Номер окна выдает каждый раз следующий.<br />16-17-18-19... и так по порядку каждый раз при убиении и запуске скрипта. <br />
			<i>16.01.2021 16:18:21, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51822/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51822/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:18:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51821/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_4UBlGPMi" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/47/" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex> написал:<br />Имея номер окна, можно писать в него из любых скриптов.<br />=============<br /> Не знаю, может у меня версия квика какая-то другая. Но нумерация окон не сквозная, у каждого скрипта своя, начинающаяся с 1.<br />Т.е., идентификаторы окон разных скриптов могут совпадать. И писать в окно другого скрипта не получается.<br />=============<br />Ндааа, полил холодной водичкой ((( <br />
			<i>16.01.2021 16:05:10, Kolossi.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51821/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51821/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 16:05:10 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Подкиньте идею</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message51820/topic6143/">Подкиньте идею</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_xrxPQF68" href="/user/47/" bx-tooltip-user-id="47">s_mike@rambler.ru</a> написал:<br />Имея номер окна, можно писать в него из любых скриптов.<br />=============<br />Не знаю, может у меня версия квика какая-то другая. Но нумерация окон не сквозная, у каждого скрипта своя, начинающаяся с 1.<br />Т.е., идентификаторы окон разных скриптов могут совпадать. И писать в окно другого скрипта не получается. <br />
			<i>16.01.2021 15:29:59, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message51820/topic6143/</link>
			<guid>http://forum.quik.ru/messages/forum10/message51820/topic6143/</guid>
			<pubDate>Sat, 16 Jan 2021 15:29:59 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
