<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Quik 8.5 не освобождается память]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Quik 8.5 не освобождается память форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Sun, 10 May 2026 03:36:32 +0300</pubDate>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message55124/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день, <noindex><a href="https://forum.quik.ru/user/54/" target="_blank" rel="nofollow">Старатель</a></noindex>.<br /> <br /> Действительно, в ПО QLUA есть ошибка закрытия источников данных. Мы &nbsp;исправим её в очередном обновлении ПО. Приносим извинения за причинённые &nbsp;неудобства. <br />
			<i>27.04.2021 21:15:44, Alexey Ivannikov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message55124/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message55124/topic5336/</guid>
			<pubDate>Tue, 27 Apr 2021 21:15:44 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message55123/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день, <noindex><a href="https://forum.quik.ru/user/54/" target="_blank" rel="nofollow">Старатель</a></noindex>.<br /> <br /> Действительно в ПО QLUA есть некорректная обработка ошибок загрузки &nbsp;скриптов, приводящая к незакрытию Lua-стейтмента. Мы исправим ошибку в &nbsp;очередном обновлении ПО. Приносим извинения за причинённые неудобства. <br />
			<i>27.04.2021 20:56:19, Alexey Ivannikov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message55123/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message55123/topic5336/</guid>
			<pubDate>Tue, 27 Apr 2021 20:56:19 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message53852/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_ZresETrA" href="/user/54/" bx-tooltip-user-id="54">Старатель</a>, добрый день!<br /><br />Ваше письмо получено, озвученные проблемы изучаются. Постараемся в ближайшее время дать ответ. <br />
			<i>16.03.2021 06:43:42, Roman Azarov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message53852/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message53852/topic5336/</guid>
			<pubDate>Tue, 16 Mar 2021 06:43:42 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message53757/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Подытожим. QUIK 8.12.0.41<br /><br />1. При закрытии data_source память не освобождается, если был назначен SetUpdateCallback<br />Код:<br /><table class="forum-spoiler"><thead onclick="if (this.nextSibling.style.display=='none') { this.nextSibling.style.display=''; BX.addClass(this, 'forum-spoiler-head-open'); } else { this.nextSibling.style.display='none'; BX.removeClass(this, 'forum-spoiler-head-open'); } BX.onCustomEvent('BX.Forum.Spoiler:toggle', [{node: this}]); event.stopPropagation();"><tr><th><div>Скрытый текст</div></th></tr></thead><tbody class="forum-spoiler" style="display:none;"><tr><td>
====code====
<pre>local run = true
function OnStop()
&nbsp;&nbsp;run = nil
end

function main()
&nbsp;&nbsp;local function cb(index) end
&nbsp;&nbsp;local ds

&nbsp;&nbsp;while run do
&nbsp;&nbsp;&nbsp;&nbsp;ds = CreateDataSource(class, sec_code, INTERVAL_M1)
&nbsp;&nbsp;&nbsp;&nbsp;ds:SetUpdateCallback(cb)
&nbsp;&nbsp;&nbsp;&nbsp;sleep(500)
&nbsp;&nbsp;&nbsp;&nbsp;ds:Close()
&nbsp;&nbsp;&nbsp;&nbsp;ds = nil
&nbsp;&nbsp;&nbsp;&nbsp;collectgarbage("collect")
&nbsp;&nbsp;&nbsp;&nbsp;sleep(500)
&nbsp;&nbsp;end
&nbsp;&nbsp;collectgarbage("collect")
&nbsp;&nbsp;message(string.format("Memory: %.1f Mb", collectgarbage("count") / 1024))
end</pre>
=============
</td></tr></tbody></table>Если убрать строку с SetUpdateCallback или заменить на SetEmptyCallback, память не растёт.<br /><br />2. Если при загрузке модулей возникает ошибка, то библиотеки из памяти не выгружаются.<br />Код:<br /><table class="forum-spoiler"><thead onclick="if (this.nextSibling.style.display=='none') { this.nextSibling.style.display=''; BX.addClass(this, 'forum-spoiler-head-open'); } else { this.nextSibling.style.display='none'; BX.removeClass(this, 'forum-spoiler-head-open'); } BX.onCustomEvent('BX.Forum.Spoiler:toggle', [{node: this}]); event.stopPropagation();"><tr><th><div>Скрытый текст</div></th></tr></thead><tbody class="forum-spoiler" style="display:none;"><tr><td>
====code====
<pre>require(mod1)
require(mod2)&nbsp;&nbsp;-- Тут возникает ошибка загрузки модуля
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -- mod1 выгружен не будет.
function main()
&nbsp;&nbsp;...
end</pre>
=============
</td></tr></tbody></table> <br />
			<i>13.03.2021 09:51:58, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message53757/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message53757/topic5336/</guid>
			<pubDate>Sat, 13 Mar 2021 09:51:58 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message50867/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_wzY7gOlF" href="/user/2480/" bx-tooltip-user-id="2480">Виталий</a>, здравствуйте.<br /><br />В той ветке шло обсуждение другой проблемы, не связанной с текущей. <br />
			<i>08.12.2020 12:35:51, Evgeniy Karnaukhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message50867/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message50867/topic5336/</guid>
			<pubDate>Tue, 08 Dec 2020 12:35:51 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message50834/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_DVihBu8m" href="/user/2480/" bx-tooltip-user-id="2480">Виталий</a> написал:<br />Видимо, не была или была не полностью. Вот описание &nbsp;<noindex><a href="https://forum.quik.ru/messages/forum10/message50829/topic6030/#message50829" target="_blank" rel="nofollow">https://forum.quik.ru/messages/forum10/message50829/topic6030/#message50829</a></noindex> <br />=============<br /><br />Ветка, на которую вы ссылаетесь - вообще про другое абсолютно. <br />
			<i>07.12.2020 14:26:53, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message50834/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message50834/topic5336/</guid>
			<pubDate>Mon, 07 Dec 2020 14:26:53 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message50830/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_aAegO9Cg" href="/user/13858/" bx-tooltip-user-id="13858">Evgeniy Karnaukhov</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/1222/" target="_blank" rel="nofollow">Anton</a></noindex> написал:<br /> &nbsp;<br />====quote====<br /> <noindex><a href="/user/17/" target="_blank" rel="nofollow">Sergey Gorokhov</a></noindex> &nbsp;написал:<br />Можете привести пример кода на котором проблема воспроизводится?<br />=============<br /> &nbsp;Да, конечно. Проверил еще раз на 8.6.0.97 только что, все как было, запускаем - получаем просто ошибку, запускаем повторно - получаем сначала все финализаторы, потом ошибку.<br /> &nbsp;
====code====
<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local&nbsp;&nbsp; run&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; true&nbsp;&nbsp;

&nbsp;&nbsp;-- global table&nbsp;&nbsp;
tgl&nbsp;&nbsp; =&nbsp;&nbsp; {}
setmetatable(tgl, { __gc&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; function&nbsp;&nbsp;()&nbsp;&nbsp; message&nbsp;&nbsp;(&nbsp;&nbsp;"global __gc"&nbsp;&nbsp;)&nbsp;&nbsp; end&nbsp;&nbsp; })

&nbsp;&nbsp;-- chunk-level table&nbsp;&nbsp;
&nbsp;&nbsp;local&nbsp;&nbsp; tcl&nbsp;&nbsp; =&nbsp;&nbsp; {}
setmetatable(tcl, { __gc&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; function&nbsp;&nbsp;()&nbsp;&nbsp; message&nbsp;&nbsp;(&nbsp;&nbsp;"chunk-level __gc"&nbsp;&nbsp;)&nbsp;&nbsp; end&nbsp;&nbsp; })

&nbsp;&nbsp;function&nbsp;&nbsp;&nbsp;&nbsp;OnStop ()
&nbsp;&nbsp; run&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; false&nbsp;&nbsp;
&nbsp;&nbsp;end&nbsp;&nbsp;

&nbsp;&nbsp;function&nbsp;&nbsp;&nbsp;&nbsp;OnInit ()
&nbsp;&nbsp;&nbsp;&nbsp; -- function-level table&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp; local&nbsp;&nbsp; tfl&nbsp;&nbsp; =&nbsp;&nbsp; {}
&nbsp;&nbsp; setmetatable(tfl, { __gc&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; function&nbsp;&nbsp;()&nbsp;&nbsp; message&nbsp;&nbsp;(&nbsp;&nbsp;"function-level __gc"&nbsp;&nbsp;)&nbsp;&nbsp; end&nbsp;&nbsp; })
&nbsp;&nbsp;&nbsp;&nbsp; do&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-- block-level table&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local&nbsp;&nbsp; tbl&nbsp;&nbsp; =&nbsp;&nbsp; {}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setmetatable(tbl, { __gc&nbsp;&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp; function&nbsp;&nbsp;()&nbsp;&nbsp; message&nbsp;&nbsp;(&nbsp;&nbsp;"block-level __gc"&nbsp;&nbsp;)&nbsp;&nbsp; end&nbsp;&nbsp; })
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-- now raise an error&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error(&nbsp;&nbsp;"error from OnInit"&nbsp;&nbsp;)
&nbsp;&nbsp;&nbsp;&nbsp; end&nbsp;&nbsp;
&nbsp;&nbsp;end&nbsp;&nbsp;

&nbsp;&nbsp;function&nbsp;&nbsp;&nbsp;&nbsp;main ()
&nbsp;&nbsp;&nbsp;&nbsp; while&nbsp;&nbsp; run&nbsp;&nbsp; do&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep&nbsp;&nbsp;(&nbsp;&nbsp;1000&nbsp;&nbsp;)
&nbsp;&nbsp;&nbsp;&nbsp; end&nbsp;&nbsp;
&nbsp;&nbsp;end&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;</pre>
=============
 &nbsp;<br />=============<br /> <br />Добрый день,<br />Описанная в данном инциденте ошибка была исправлена в версии 8.7.1 терминала QUIK. Рекомендуем вам обновить версию программы.<br /><br />Приносим извинения за причиненные неудобства.<br />=============<br />Видимо, не была или была не полностью. Вот описание <noindex><a href="https://forum.quik.ru/messages/forum10/message50829/topic6030/#message50829" target="_blank" rel="nofollow">https://forum.quik.ru/messages/forum10/message50829/topic6030/#message50829</a></noindex> <br />
			<i>07.12.2020 12:46:20, Виталий.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message50830/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message50830/topic5336/</guid>
			<pubDate>Mon, 07 Dec 2020 12:46:20 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46819/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_XPqps4a5" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/17/" target="_blank" rel="nofollow">Sergey Gorokhov</a></noindex> написал:<br />Можете привести пример кода на котором проблема воспроизводится?<br />=============<br /> Да, конечно. Проверил еще раз на 8.6.0.97 только что, все как было, запускаем - получаем просто ошибку, запускаем повторно - получаем сначала все финализаторы, потом ошибку.<br /> 
====code====
<pre>&nbsp;&nbsp; local&nbsp;&nbsp;run&nbsp;&nbsp;=&nbsp;&nbsp; true 

 -- global table 
tgl&nbsp;&nbsp;=&nbsp;&nbsp;{}
setmetatable(tgl, { __gc&nbsp;&nbsp;=&nbsp;&nbsp; function ()&nbsp;&nbsp;message ( "global __gc" )&nbsp;&nbsp;end&nbsp;&nbsp;})

 -- chunk-level table 
 local&nbsp;&nbsp;tcl&nbsp;&nbsp;=&nbsp;&nbsp;{}
setmetatable(tcl, { __gc&nbsp;&nbsp;=&nbsp;&nbsp; function ()&nbsp;&nbsp;message ( "chunk-level __gc" )&nbsp;&nbsp;end&nbsp;&nbsp;})

 function&nbsp;&nbsp; OnStop ()
&nbsp;&nbsp; run&nbsp;&nbsp;=&nbsp;&nbsp; false 
 end 

 function&nbsp;&nbsp; OnInit ()
&nbsp;&nbsp;&nbsp;&nbsp;-- function-level table 
&nbsp;&nbsp;&nbsp;&nbsp;local&nbsp;&nbsp;tfl&nbsp;&nbsp;=&nbsp;&nbsp;{}
&nbsp;&nbsp; setmetatable(tfl, { __gc&nbsp;&nbsp;=&nbsp;&nbsp; function ()&nbsp;&nbsp;message ( "function-level __gc" )&nbsp;&nbsp;end&nbsp;&nbsp;})
&nbsp;&nbsp;&nbsp;&nbsp;do 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -- block-level table 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; local&nbsp;&nbsp;tbl&nbsp;&nbsp;=&nbsp;&nbsp;{}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setmetatable(tbl, { __gc&nbsp;&nbsp;=&nbsp;&nbsp; function ()&nbsp;&nbsp;message ( "block-level __gc" )&nbsp;&nbsp;end&nbsp;&nbsp;})
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -- now raise an error 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error( "error from OnInit" )
&nbsp;&nbsp;&nbsp;&nbsp;end 
 end 

 function&nbsp;&nbsp; main ()
&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;&nbsp;run&nbsp;&nbsp;do 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sleep ( 1000 )
&nbsp;&nbsp;&nbsp;&nbsp;end 
 end 
&nbsp;&nbsp;</pre>
=============
 <br />=============<br /><br />Добрый день,<br />Описанная в данном инциденте ошибка была исправлена в версии 8.7.1 терминала QUIK. Рекомендуем вам обновить версию программы.<br /><br />Приносим извинения за причиненные неудобства. <br />
			<i>07.07.2020 11:46:22, Evgeniy Karnaukhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46819/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46819/topic5336/</guid>
			<pubDate>Tue, 07 Jul 2020 11:46:22 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46674/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Для коллекции, при ошибке загрузки библиотеки или модуля все раннее загруженные модули не выгружаются:<br />
====code====
<pre>require(mod1)
require(mod2)&nbsp;&nbsp;-- Тут возникает ошибка загрузки модуля

function main()
&nbsp;&nbsp;...
end</pre>
============= <br />
			<i>01.07.2020 16:46:49, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46674/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46674/topic5336/</guid>
			<pubDate>Wed, 01 Jul 2020 16:46:49 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46323/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_KdJhJZeJ" href="/user/12786/" bx-tooltip-user-id="12786">Alexander Kopyatkevich</a> написал:<br />Исправим данную ошибку в очередном обновлении ПО.<br />=============<br />Спасибо. Главно дело чтобы мейн опять не сломался при этом ) <br />
			<i>17.06.2020 18:01:13, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46323/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46323/topic5336/</guid>
			<pubDate>Wed, 17 Jun 2020 18:01:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46318/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<p>Добрый день, <a class="blog-p-user-name" id="bp_QFtj134W" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a>!<br /> &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; Действительно, при вызове ошибки в OnInit &nbsp;lua statement не &nbsp; &nbsp; &nbsp; закрывается. Исправим данную ошибку в очередном обновлении ПО.</p>Приносим извинения за причиненные неудобства! <br />
			<i>17.06.2020 17:35:36, Alexander Kopyatkevich.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46318/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46318/topic5336/</guid>
			<pubDate>Wed, 17 Jun 2020 17:35:36 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46291/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_CDbDT3UP" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a>, <br />Проблема изучается. Постараемся в ближайшее время дать ответ. <br />
			<i>16.06.2020 13:28:57, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46291/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46291/topic5336/</guid>
			<pubDate>Tue, 16 Jun 2020 13:28:57 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46289/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_5CS5u217" href="/user/17/" bx-tooltip-user-id="17">Sergey Gorokhov</a> написал:<br />Можете привести пример кода на котором проблема воспроизводится?<br />=============<br />Да, конечно. Проверил еще раз на 8.6.0.97 только что, все как было, запускаем - получаем просто ошибку, запускаем повторно - получаем сначала все финализаторы, потом ошибку.<br />
====code====
<pre>local run = true

-- global table
tgl = {}
setmetatable(tgl, { __gc = function() message("global __gc") end })

-- chunk-level table
local tcl = {}
setmetatable(tcl, { __gc = function() message("chunk-level __gc") end })

function OnStop()
&nbsp;&nbsp;&nbsp;run = false
end

function OnInit()
&nbsp;&nbsp;&nbsp;-- function-level table
&nbsp;&nbsp;&nbsp;local tfl = {}
&nbsp;&nbsp;&nbsp;setmetatable(tfl, { __gc = function() message("function-level __gc") end })
&nbsp;&nbsp;&nbsp;do
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-- block-level table
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local tbl = {}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setmetatable(tbl, { __gc = function() message("block-level __gc") end })
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-- now raise an error
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error("error from OnInit")
&nbsp;&nbsp;&nbsp;end
end

function main()
&nbsp;&nbsp;&nbsp;while run do
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep(1000)
&nbsp;&nbsp;&nbsp;end
end
</pre>
============= <br />
			<i>16.06.2020 12:13:48, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46289/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46289/topic5336/</guid>
			<pubDate>Tue, 16 Jun 2020 12:13:48 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46286/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_HygiFHw0" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />Однако, если бросить ошибку в теле скрипта или в OnInit, по-прежнему выпадем без очистки. С этим можно жить, конечно, отложить ошибку до мейна ровно три строчки, но непорядочек все же. Тем более, в отличие от ошибок в колбеках, в этот момент мейн еще не создан, следовательно, жестко прибивать поток мейна не придется, тут теоретически можно допилить до красоты.<br />=============<br />Можете привести пример кода на котором проблема воспроизводится? <br />
			<i>16.06.2020 11:00:31, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46286/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46286/topic5336/</guid>
			<pubDate>Tue, 16 Jun 2020 11:00:31 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message46083/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_h57AVPI7" href="/user/13697/" bx-tooltip-user-id="13697">Максим</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/25/" target="_blank" rel="nofollow">Stanislav Tvorogov</a></noindex> написал:<br /> &nbsp;<br />====quote====<br /> <noindex><a href="/user/13697/" target="_blank" rel="nofollow">Максим</a></noindex> &nbsp;написал:<br /> &nbsp; <br />====quote====<br /> &nbsp;<noindex><a href="/user/13858/" target="_blank" rel="nofollow">Evgeniy Karnaukhov</a></noindex> &nbsp; написал:<br /> &nbsp; <noindex><a href="/user/1222/" target="_blank" rel="nofollow">Anton</a></noindex> &nbsp; , здравствуйте.<br /><br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />Рекомендуем вам обновить версию программы.<br />Приносим извинения за причиненные неудобства.<br />=============<br /> &nbsp; а можно продолжить работать на версии Квик 7 после ввода 19-значных номеров заявок?<br />=============<br /> &nbsp;Добрый день,<br /><br />Данная версия Рабочего места QUIK будет работать с ограничениями, описанными в ветке:<br /> &nbsp;<noindex><a href="https://forum.quik.ru/forum1/topic5117/" target="_blank" rel="nofollow">https://forum.quik.ru/forum1/topic5117/</a></noindex> &nbsp;<br />=============<br /> я понимаю, что в данной ветке, ну а технически в Квик 7 будет возможность снять заявку вручную через меню терминала правой кнопкой мыши &quot;Снять заявку&quot; ?<br />=============<br />Здравствуйте.<br /><br />Да, в 7 версии QUIK такая возможность присутствует. <br />
			<i>09.06.2020 10:36:04, Evgeniy Karnaukhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message46083/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message46083/topic5336/</guid>
			<pubDate>Tue, 09 Jun 2020 10:36:04 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45910/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_pzfCNB6Y" href="/user/25/" bx-tooltip-user-id="25">Stanislav Tvorogov</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/13697/" target="_blank" rel="nofollow">Максим</a></noindex> написал:<br /> &nbsp;<br />====quote====<br /> <noindex><a href="/user/13858/" target="_blank" rel="nofollow">Evgeniy Karnaukhov</a></noindex> &nbsp;написал:<br /> &nbsp;<noindex><a href="/user/1222/" target="_blank" rel="nofollow">Anton</a></noindex> &nbsp;, здравствуйте.<br /><br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />Рекомендуем вам обновить версию программы.<br />Приносим извинения за причиненные неудобства.<br />=============<br /> &nbsp;а можно продолжить работать на версии Квик 7 после ввода 19-значных номеров заявок?<br />=============<br /> Добрый день,<br /><br />Данная версия Рабочего места QUIK будет работать с ограничениями, описанными в ветке:<br /> <noindex><a href="https://forum.quik.ru/forum1/topic5117/" target="_blank" rel="nofollow">https://forum.quik.ru/forum1/topic5117/</a></noindex> <br />=============<br />я понимаю, что в данной ветке, ну а технически в Квик 7 будет возможность снять заявку вручную через меню терминала правой кнопкой мыши &quot;Снять заявку&quot; ? <br />
			<i>03.06.2020 23:52:29, Максим.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45910/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45910/topic5336/</guid>
			<pubDate>Wed, 03 Jun 2020 23:52:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45893/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_aAfRpg2Q" href="/user/13697/" bx-tooltip-user-id="13697">Максим</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/13858/" target="_blank" rel="nofollow">Evgeniy Karnaukhov</a></noindex> написал:<br /> <noindex><a href="/user/1222/" target="_blank" rel="nofollow">Anton</a></noindex> , здравствуйте.<br /><br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />Рекомендуем вам обновить версию программы.<br />Приносим извинения за причиненные неудобства.<br />=============<br /> а можно продолжить работать на версии Квик 7 после ввода 19-значных номеров заявок?<br />=============<br />Добрый день,<br /><br />Данная версия Рабочего места QUIK будет работать с ограничениями, описанными в ветке:<br /><noindex><a href="https://forum.quik.ru/forum1/topic5117/" target="_blank" rel="nofollow">https://forum.quik.ru/forum1/topic5117/</a></noindex> <br />
			<i>03.06.2020 16:50:28, Stanislav Tvorogov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45893/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45893/topic5336/</guid>
			<pubDate>Wed, 03 Jun 2020 16:50:28 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45867/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_dU4vH884" href="/user/13697/" bx-tooltip-user-id="13697">Максим</a> написал:<br />а можно продолжить работать на версии Квик 7 после ввода 19-значных номеров заявок?<br />=============<br />Кто ж ему запретит, он же памятник. <br />
			<i>02.06.2020 18:28:30, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45867/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45867/topic5336/</guid>
			<pubDate>Tue, 02 Jun 2020 18:28:30 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45866/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_V0VK49J4" href="/user/13858/" bx-tooltip-user-id="13858">Evgeniy Karnaukhov</a> написал:<br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />=============<br />Уже опробовал, при ошибке из мейна действительно теперь выходим с очисткой. Это уже позволяет сделать нормальную обработку ошибок в скрипте, до того задача была неразрешимой без костылей. Спасибо всем принявшим участие в исправлении.<br /><br />Однако, если бросить ошибку в теле скрипта или в OnInit, по-прежнему выпадем без очистки. С этим можно жить, конечно, отложить ошибку до мейна ровно три строчки, но непорядочек все же. Тем более, в отличие от ошибок в колбеках, в этот момент мейн еще не создан, следовательно, жестко прибивать поток мейна не придется, тут теоретически можно допилить до красоты. <br />
			<i>02.06.2020 18:26:42, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45866/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45866/topic5336/</guid>
			<pubDate>Tue, 02 Jun 2020 18:26:42 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45865/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_h8BMMGNb" href="/user/13858/" bx-tooltip-user-id="13858">Evgeniy Karnaukhov</a> написал:<br /><noindex><a href="/user/1222/" target="_blank" rel="nofollow">Anton</a></noindex>, здравствуйте.<br /><br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />Рекомендуем вам обновить версию программы.<br />Приносим извинения за причиненные неудобства.<br />=============<br />а можно продолжить работать на версии Квик 7 после ввода 19-значных номеров заявок? <br />
			<i>02.06.2020 18:11:17, Максим.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45865/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45865/topic5336/</guid>
			<pubDate>Tue, 02 Jun 2020 18:11:17 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message45861/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_tfzLGMTo" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a>, здравствуйте.<br /><br />Описанная в данном инциденте ошибка была исправлена в версии 8.6.0 терминала QUIK.<br />Рекомендуем вам обновить версию программы.<br />Приносим извинения за причиненные неудобства. <br />
			<i>02.06.2020 17:12:38, Evgeniy Karnaukhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message45861/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message45861/topic5336/</guid>
			<pubDate>Tue, 02 Jun 2020 17:12:38 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44864/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_dH5yLtxj" href="/user/19/" bx-tooltip-user-id="19">Egor Zaytsev</a> написал:<br />Мы исправим ошибку в ближайшем &nbsp; &nbsp; &nbsp; обновлении ПО. <br />=============<br />Радостно слышать. Немного напрягает уточнение &quot;синтаксических&quot;. На этом этапе подчищать еще особо и нечего, интересно именно когда скрипт уже поехал и насоздавал всякого.<br /><br />Это, похоже, последняя ошибка в qlua на уровне собственно языка. <br />
			<i>13.05.2020 19:54:15, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44864/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44864/topic5336/</guid>
			<pubDate>Wed, 13 May 2020 19:54:15 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44861/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<p>Добрый день,<br /> &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; Действительно, есть ошибка закрытия LUA стейтмента при &nbsp; &nbsp; &nbsp; синтаксических ошибках в скриптах. Мы исправим ошибку в ближайшем &nbsp; &nbsp; &nbsp; обновлении ПО. <br /> &nbsp; &nbsp; </p>Приносим извинения за доставленные неудобства. <br />
			<i>13.05.2020 18:53:47, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44861/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44861/topic5336/</guid>
			<pubDate>Wed, 13 May 2020 18:53:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44840/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте!<br /> <br /> Ваше обращение получено, проблема изучается. Постараемся в ближайшее время дать ответ. <br />
			<i>13.05.2020 14:07:21, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44840/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44840/topic5336/</guid>
			<pubDate>Wed, 13 May 2020 14:07:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44755/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_LDERbNYE" href="/user/19/" bx-tooltip-user-id="19">Egor Zaytsev</a> написал:<br />Проблема на 8.5.2?<br />=============<br />Подтверждаю наличие в 8.5.2 и во всех предках. Другой (возможно, более наглядный) вариант тестового скрипта не раз уже приводил:<br />
====code====
<pre>-- global table
gtbl = {}
setmetatable(gtbl, { __gc = function() message("gc global level") end })

-- chunk-level table
local stbl = {}
setmetatable(stbl, { __gc = function() message("gc chunk level") end })

function OnInit()
&nbsp;&nbsp;&nbsp;message("OnInit")
&nbsp;&nbsp;&nbsp;-- error("OnInit error")
end

function main()
&nbsp;&nbsp;&nbsp;message("main")
&nbsp;&nbsp;&nbsp;local ltbl = {}
&nbsp;&nbsp;&nbsp;setmetatable(ltbl, { __gc = function() message("gc function level") end })
&nbsp;&nbsp;&nbsp;error("main error")
end
</pre>
=============
При первом запуске квик показывает ошибку в мейне, сборки мусора нет. Если запустить его снова, сначала отработают все финализаторы в положенном порядке. Сам факт, что стейт со всеми глобалами переживает скрипт, уже на мысли наводит. <br />
			<i>12.05.2020 13:07:01, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44755/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44755/topic5336/</guid>
			<pubDate>Tue, 12 May 2020 13:07:01 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44741/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_LKRE1J7L" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />function main()<br /> &nbsp;t = {}<br /> &nbsp;for i = 1, 10000000 do<br /> &nbsp; &nbsp;t<I> = i<br /> &nbsp;end<br /> &nbsp;local a = b + 1<br />end</I><br />=============<br />Проблема на 8.5.2? <br />
			<i>12.05.2020 11:57:48, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44741/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44741/topic5336/</guid>
			<pubDate>Tue, 12 May 2020 11:57:48 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44674/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_5Gi56B6m" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />При остановке скрипта в результате ошибки память не освобождается.<br />=============<br />Также не выгружаются загруженные в скрипт библиотеки. Эти проблемы, вроде, уже лечили в 6 или 7 версии. <br />
			<i>11.05.2020 09:51:23, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44674/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44674/topic5336/</guid>
			<pubDate>Mon, 11 May 2020 09:51:23 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44656/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_ABmdiOk6" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />При остановке скрипта в результате ошибки память не освобождается.<br />=============<br />Еще со старого луа <noindex><a href="https://forum.quik.ru/messages/forum10/message39077/topic4661/#message39077" target="_blank" rel="nofollow">осталось</a></noindex>. Что характерно, при повторном запуске того же скрипта - добивается. Но это часто слишком поздно, если финализеры используются. Пытался обойти так<br />
====code====
<pre>local function safecall(fn, ...)
&nbsp;&nbsp;&nbsp;local a
&nbsp;&nbsp;&nbsp;if nil == arg then a = nil else a = unpack(arg) end
&nbsp;&nbsp;&nbsp;local s, e = pcall(fn, a);
&nbsp;&nbsp;&nbsp;if not s then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_G = nil
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;collectgarbage()
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error(e)
&nbsp;&nbsp;&nbsp;end
end

OnI nit = function()
&nbsp;&nbsp;&nbsp;safecall(function()
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message("OnInit")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--error("error in OnInit")
&nbsp;&nbsp;&nbsp;end)
end

main = function()
&nbsp;&nbsp;&nbsp;safecall(function()
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message("main")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local ltbl = {}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setmetatable(ltbl, { __gc = function() message("ltbl finalizer") end })
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error("error in main")
&nbsp;&nbsp;&nbsp;end)
end
</pre>
=============
Но это ж жесть, колбеки через pcall пропускать. Вот то, что у меня в safecall при ошибке, надо и в квике при ошибке делать. <br />
			<i>10.05.2020 18:54:05, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44656/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44656/topic5336/</guid>
			<pubDate>Sun, 10 May 2020 18:54:05 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44655/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			При остановке скрипта в результате ошибки память не освобождается. Пример:<br />
====code====
<pre>function main()
&nbsp;&nbsp;t = {}
&nbsp;&nbsp;for i = 1, 10000000 do
&nbsp;&nbsp;&nbsp;&nbsp;t&#91;i&#93; = i
&nbsp;&nbsp;end
&nbsp;&nbsp;local a = b + 1
end</pre>
============= <br />
			<i>10.05.2020 17:19:34, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44655/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44655/topic5336/</guid>
			<pubDate>Sun, 10 May 2020 17:19:34 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Quik 8.5 не освобождается память</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message44460/topic5336/">Quik 8.5 не освобождается память</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gYoF2zmc" href="/user/13869/" bx-tooltip-user-id="13869">Андрей</a> написал:<br />1. При аварийном завершении работы скрипта не удаляется окно(таблица AllocTable()) которое было создано в квике<br /><br />2. Не освобождается память по коду ниже, при использовании SetEmptyCallback очищается нормально 
====code====
<pre>&nbsp;&nbsp; function&nbsp;&nbsp; OnCandle (index)
 end 

 function&nbsp;&nbsp; OnStop ()
&nbsp;&nbsp; is_run&nbsp;&nbsp;=&nbsp;&nbsp; false 
 end 

 function&nbsp;&nbsp; main ()
&nbsp;&nbsp; collectgarbage ( "setpause" , 50 )
&nbsp;&nbsp; collectgarbage ( "setstepmul" , 300 )
&nbsp;&nbsp; class =&nbsp;&nbsp;"SPBFUT" 
&nbsp;&nbsp; name =&nbsp;&nbsp;"SiM0" 
&nbsp;&nbsp; ds_chan =&nbsp;&nbsp;CreateDataSource (class, name, INTERVAL_M1)
&nbsp;&nbsp; ds_chan: SetUpdateCallback (OnCandle)
&nbsp;&nbsp; is_run =&nbsp;&nbsp;true 
&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;&nbsp;is_run&nbsp;&nbsp;do 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; local&nbsp;&nbsp;t&nbsp;&nbsp;=&nbsp;&nbsp; "" 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; local&nbsp;&nbsp;a&nbsp;&nbsp;=&nbsp;&nbsp;tostring( getInfoParam ( "SERVERTIME" ))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for&nbsp;&nbsp;s&nbsp;&nbsp;in&nbsp;&nbsp;a:gmatch( '%d+' )&nbsp;&nbsp;do 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t = t .. s
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --sleep(15) 
&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;
&nbsp;&nbsp; ds_chan: Close ()
 end&nbsp;&nbsp;
&nbsp;&nbsp;</pre>
=============
 <br />=============<br />Добрый день,<br /> &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; Описанная в данном инциденте ошибка была исправлена в версии 8.5.2 &nbsp; &nbsp; &nbsp; терминала QUIK.<br /> &nbsp; &nbsp; &nbsp; Рекомендуем вам обновить версию программы.<br /> &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; Приносим извинения за причиненные неудобства. <br />
			<i>07.05.2020 14:06:16, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message44460/topic5336/</link>
			<guid>http://forum.quik.ru/messages/forum10/message44460/topic5336/</guid>
			<pubDate>Thu, 07 May 2020 14:06:16 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
