<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: задержка в сотых долях секунды]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=7877</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7877&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: задержка в сотых долях секунды».]]></description>
		<lastBuildDate>Thu, 01 Sep 2016 10:39:54 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107230#p107230</link>
			<description><![CDATA[<p>Возможно, будет интересно. Задержку в секундах можно сделать также так:<br /></p><div class="codebox"><pre><code>choice /c y /t КОЛИЧЕСТВО_СЕКУНД /d y</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (kobakoba2009)]]></author>
			<pubDate>Thu, 01 Sep 2016 10:39:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107230#p107230</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=68098#p68098</link>
			<description><![CDATA[<p>timeout хорошо подходит, если нужна длительная задержка. Для коротких задержек вполне можно использовать предложенный мною вариант, тем более, что он дает неплохую точность.<br />Однако в моем варианте есть ошибка. Способ устранения см. тут: <a href="http://forum.script-coding.com/viewtopic.php?pid=68097#p68097">http://forum.script-coding.com/viewtopi … 097#p68097</a></p><p>P.S. Исправил код в первом сообщении, так что теперь там ошибки уже нет. Остается лишь проблема перехода на новые сутки.</p><p>P.P.S. <strong>timeout</strong> отсутствует в Windows XP.</p>]]></description>
			<author><![CDATA[null@example.com (Arigato)]]></author>
			<pubDate>Tue, 01 Jan 2013 07:28:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=68098#p68098</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67035#p67035</link>
			<description><![CDATA[<p><strong>timeout</strong> нормально решает задачу. Не знал о нем раньше.</p><p>Задержка на 10 секунд:<br /></p><div class="codebox"><pre><code>timeout /t 10 /nobreak&gt;nul</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Arigato)]]></author>
			<pubDate>Mon, 17 Dec 2012 08:04:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67035#p67035</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67034#p67034</link>
			<description><![CDATA[<p>Но это только в секундах<br /></p><div class="quotebox"><blockquote><p>timeout /?</p></blockquote></div><p>Можно вызывать JScript, передавая ему заданное количество миллисекунд. Но и это тоже не точный вариант. </p><p>А к чему такая точность?</p>]]></description>
			<author><![CDATA[null@example.com (Rumata)]]></author>
			<pubDate>Mon, 17 Dec 2012 07:16:36 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67034#p67034</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67032#p67032</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>А то, о чём пишете Вы, принято называть пакетными файлами.</p></blockquote></div><p>Пусть будет так.</p><div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>Вот именно, что не типа «WScript.Sleep», а обычная «заморозка». Приведённый код даёт 100% загрузку одного логического юнита ЦП.</p></blockquote></div><p>Есть ли лучший способ относительно точной задержки?</p>]]></description>
			<author><![CDATA[null@example.com (Arigato)]]></author>
			<pubDate>Mon, 17 Dec 2012 07:01:37 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67032#p67032</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67025#p67025</link>
			<description><![CDATA[<div class="quotebox"><cite>Arigato пишет:</cite><blockquote><p>в языке сценариев Windows не предусмотрено.</p></blockquote></div><p><strong>Arigato</strong>, WSH — Windows Script Host. А то, о чём пишете Вы, принято называть пакетными файлами.</p><div class="quotebox"><cite>Arigato пишет:</cite><blockquote><p>типа sleep, … Предлагаю более точный способ задержки,</p></blockquote></div><p>Вот именно, что не типа «WScript.Sleep», а обычная «заморозка». Приведённый код даёт 100% загрузку одного логического юнита ЦП.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 16 Dec 2012 21:46:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67025#p67025</guid>
		</item>
		<item>
			<title><![CDATA[CMD/BAT: задержка в сотых долях секунды]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67015#p67015</link>
			<description><![CDATA[<p>Стандартной команды задержки, типа sleep, в языке сценариев Windows не предусмотрено. Есть множество различных извращенных способов получить хоть какую-то задержку, например, через ping.</p><p>Предлагаю более точный способ задержки, использующий счетчик времени %time%, который позволяет производить замеры времени с точностью до сотых долей секунды.</p><p>Код, реализующий задержку в 10 секунд:</p><div class="codebox"><pre><code>@ echo off

:: Задержка в 10 секунд
echo %time%
echo Wait 10 seconds...
call :sleep 1000
echo %time%
pause
exit /b

:sleep
:: Относительно точная пауза в сотых доля секунды
setlocal
call :gettick
set /a finish=%errorlevel%+%1
if %finish% geq 8640000 set finish=0
:slplabel
call :gettick
if %errorlevel% lss %finish% goto slplabel
endlocal &amp; exit /b

:gettick
:: Количество сотых долей секунды, прошедших с начала дня
setlocal
set t=%time: =0%
set /a tick=1%t:~9,2%-100+(1%t:~6,2%-100)*100+(1%t:~3,2%-100)*6000+(1%t:~0,2%-100)*360000
endlocal &amp; exit /b %tick%</code></pre></div><br /><p>Задержка реализована в виде подпрограммы :sleep, получающей единственный параметр - продолжительность задержки в сотых долях секунды. Точность задержки не идеальная, но весьма неплохая. Единственны косяк может возникнуть в момент перехода времени с 23:59 на 00:00.</p>]]></description>
			<author><![CDATA[null@example.com (Arigato)]]></author>
			<pubDate>Sun, 16 Dec 2012 16:10:33 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67015#p67015</guid>
		</item>
	</channel>
</rss>
