<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; WSH, JS: Использование мютексов.]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=8484</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8484&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «WSH, JS: Использование мютексов.».]]></description>
		<lastBuildDate>Mon, 22 Jul 2013 07:58:38 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73978#p73978</link>
			<description><![CDATA[<div class="quotebox"><cite>putrsa пишет:</cite><blockquote><p>...<br />- поиск имени скрипта в параметрах запуска хостов тоже не подходит (так как часто разные скрипты работают с одними и теми же данными и необходим запрещающий сигнал &quot;сейчас данные заняты&quot; хранить где-то список всех искомых скриптов тоже не подходит - при создании нового скрипта этот список нужно обновить и распространить по всем рабочим станциям)</p></blockquote></div><p>putrsa,</p><p>1. Используйте унификацию наименования скриптов одного семейства - например, у всех один префикс MyScript_ReadData, MyScript_WriteData и т.д.<br />При запуске очередного скрипта в параметрах уже запущеных ищите вхождение MyScript_.<br />При таком подходе количество вновь создаваемых скриптов неограничено без каких-либо дополнительных телодвижений.</p><p>2. В каком виде хранятся у Вас данные, если самому приходится анализировать заняты они или нет?</p>]]></description>
			<author><![CDATA[null@example.com (Slav)]]></author>
			<pubDate>Mon, 22 Jul 2013 07:58:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73978#p73978</guid>
		</item>
		<item>
			<title><![CDATA[Re: WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73889#p73889</link>
			<description><![CDATA[<p><strong>putrsa</strong>, можно ещё при старте сценария с помощью WMI-класса <span style="color: blue">Win32_Process</span> опрашивать список процессов <em>WSCRIPT.EXE/CSCRIPT.EXE</em> на предмет наличия у свойства <strong><span style="color: blue">CommandLine</span></strong> соответствующего содержания.</p>]]></description>
			<author><![CDATA[null@example.com (Dmitrii)]]></author>
			<pubDate>Fri, 19 Jul 2013 03:37:14 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73889#p73889</guid>
		</item>
		<item>
			<title><![CDATA[Re: WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73857#p73857</link>
			<description><![CDATA[<p>DynamicWrapperX - 100% то, что нужно.<br />файл блокировки тоже в таком варианте подойдет</p>]]></description>
			<author><![CDATA[null@example.com (putrsa)]]></author>
			<pubDate>Thu, 18 Jul 2013 05:20:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73857#p73857</guid>
		</item>
		<item>
			<title><![CDATA[Re: WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73853#p73853</link>
			<description><![CDATA[<p>Просто файл блокировки необходимо открывать на добавление (mode=8) и не закрывать до окончания работы (операции).<br />При повторном одновременном запуске&nbsp; скрипта возникнет ошибка: файл занят.<br /></p><div class="codebox"><pre><code>var fso = new ActiveXObject(&quot;Scripting.FileSystemObject&quot;)
f_File=fso.OpenTextFile(&quot;main.flag&quot;,8,true)</code></pre></div><p>Данный подход можно использовать для создания тригеров(счетчиков) <br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Тригер--Счетчик</div><div class="fancy_spoiler"><div class="codebox"><pre><code>EDNo_(&quot;\\\\server\\share\\EDNO&quot;)

function EDNo_(fTriger)
{
  var start = false
  var fFlag =  fTriger + &quot;.flag&quot;
  var flag =null
  while(!start)
  {
    try
    {
      flag = fso.OpenTextFile(fFlag, 8, true)
      start = true
    }
    catch(e)
    {
      _print([&quot;Ошибка открытия нумератора&quot;, fFlag, e.number + &quot; &quot; + e.description].join(&quot;\n&quot;))
      _sleep(500)
    }
  }
  var fnew = !fso.FileExists(fTriger)
  var EDNo = 0
  if(!fnew)
  {
    var oFile = fso.OpenTextFile(fTriger, 1, true)
    EDNo = 1 * oFile.ReadLine()
    oFile.Close()
  }
  EDNo = 1 + EDNo
  var oFile = fso.OpenTextFile(fTriger, 2, true)
  oFile.Write(&quot;&quot; + (EDNo % 25000))
  oFile.Close()
  flag.Close()
  return(EDNo)
}</code></pre></div></div></div>]]></description>
			<author><![CDATA[null@example.com (badik)]]></author>
			<pubDate>Thu, 18 Jul 2013 01:53:42 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73853#p73853</guid>
		</item>
		<item>
			<title><![CDATA[Re: WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73842#p73842</link>
			<description><![CDATA[<p>Конечно можно, через компонент DynamicWrapperX.<br />Вот, пожалуйста: <a href="http://www.script-coding.com/dynwrapx.html">http://www.script-coding.com/dynwrapx.html</a></p>]]></description>
			<author><![CDATA[null@example.com (max7)]]></author>
			<pubDate>Wed, 17 Jul 2013 17:48:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73842#p73842</guid>
		</item>
		<item>
			<title><![CDATA[WSH, JS: Использование мютексов.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=73834#p73834</link>
			<description><![CDATA[<p>Борюсь с повторными запусками скриптов.<br />можно ли как-то вызывать API функции (OpenMutex, CreateMutex...) из скрипта? <br />- использование файла блокировки не подходит по причине неудаления при крахе скрипта<br />- поиск имени скрипта в параметрах запуска хостов тоже не подходит (так как часто разные скрипты работают с одними и теми же данными и необходим запрещающий сигнал &quot;сейчас данные заняты&quot; хранить где-то список всех искомых скриптов тоже не подходит - при создании нового скрипта этот список нужно обновить и распространить по всем рабочим станциям)</p>]]></description>
			<author><![CDATA[null@example.com (putrsa)]]></author>
			<pubDate>Wed, 17 Jul 2013 11:44:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=73834#p73834</guid>
		</item>
	</channel>
</rss>
