Тема: AHK: Pause в цикле
Народ, кто знает, почему в данном коде:
F12::
Pause % (i := !i) ? "off" : "on"
loop
{
send 2
sleep 10
}
return
команда Pause срабатывает 6 раз?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Народ, кто знает, почему в данном коде:
F12::
Pause % (i := !i) ? "off" : "on"
loop
{
send 2
sleep 10
}
return
команда Pause срабатывает 6 раз?
А сколько? У меня 6 раз или 12 как угодно. Смысл в том, что команда Pause останавливается на "off".
А ясно. 6 - ограничение одновременных потоков, либо циклов в стеке. Суть в том что вы не выходите из старого цикла по хоткею, он просто приостанавливается пока работает новый. Приостанавливается потому что в ahk может быть только один работающий цикл в момент времени.
Используйте таймеры. Хотите через цикл - выведите его из под потока хоткея.
http://forum.script-coding.com/viewtopic.php?id=13036
Так можно:
#If loop
F12::
Pause toggle
return
#If
F12::
loop := 1
loop
{
send 2
sleep 10
}
return
Спасибо за ответы, это да, можно по разному написать, но хотелось понять, почему именно 12 раз срабатывает пауза, когда в справке написано, что по умолчанию #MaxThreads равен 10?
Чтобы это понять, после каждого нажатия f12 смотрите key history.
Malcev, а что там можно понять? 10 потоков нигде не нахожу в окне у себя.
Up to two of the following types of threads may be created even when #MaxThreads has been reached: A hotkey, hotstring, OnClipboardChange, or GUI event if the first line of its subroutine is ExitApp, Pause, Edit, Reload, KeyHistory, ListLines, ListVars, or ListHotkeys
Да уж, а в русской справке про какую-то процедуру пишут: http://www.script-coding.com/AutoHotkey/MaxThreads.html. Получается, что через гугл-переводчик и то точнее будет перевод.
svoboden, посмотрите на дату создания русской справки и вопросы отпадут сами собой.
Malcev, не знаю, по-моему, там пропущены про дополнительные потоки информация. Вот глянуть бы английскую справку 2007 г.
Глядите:
https://autohotkey.com/download/1.0/
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться