RavdonikaS
Новичок
- Сообщения
- 68
- Репутация
- 4
Нужно было подсмотреть в справке пример подобного скрипта Запустил и с удивление обнаружил что от примера из справки процессор вообще не нагружается а мой примерно похожий кусок скрипта грузит процессор на 40-50%
Начал сравнивать искать в чем разница и обнаружил что если есть задержка хотя бы в 1 миллисекунду Sleep(1) то нет такой нагрузки
Вопрос: может кто объяснить почему такая огромная разница даже от крошечной задержки?
Начал сравнивать искать в чем разница и обнаружил что если есть задержка хотя бы в 1 миллисекунду Sleep(1) то нет такой нагрузки
Вопрос: может кто объяснить почему такая огромная разница даже от крошечной задержки?
Код:
#include <Misc.au3>
Local $hDLL = DllOpen("user32.dll")
While 1
If _IsPressed("10", $hDLL) Then
ConsoleWrite("_IsPressed - Нажата клавиша Shift." & @CRLF)
; Цикл ожидания, пока клавиша не будет отпущена.
While _IsPressed("10", $hDLL)
Sleep(250)
WEnd
ConsoleWrite("_IsPressed - Отпущена клавиша Shift." & @CRLF)
ElseIf _IsPressed("1B", $hDLL) Then
MsgBox(4096, "_IsPressed", "Нажата клавиша Esc, поэтому скрипт завершает работу.")
ExitLoop
EndIf
;~ Sleep(250) <<<<================= Эта строка если Есть и если её Нет
WEnd
DllClose($hDLL)