겐조뮤.jpg

광고베너.gif



♨신규 홍보♨



  1. 얍얍 192,528
  2. 타이갓 188,303
  3. 도리toS 169,961
  4. 투혼v 137,931
  5. 깡따구 114,783
  6. 스쿼드 102,421
  7. 두현베어스 80,992
  8. ZicP 74,853
  9. 뮤짱 66,364
  10. 치즈돈가스덮밥 62,636
  11. 농민2 60,275
  12. 키호 59,268
  13. 환장하겠네 57,910
  14. 머니 57,890
  15. 코난 56,199
  16. 별사탕 52,058
  17. 히어로 49,215
  18. 퐝비홍 44,438
  19. Baron 42,910
  20. 안인시우안 42,673
  21. 나로네 42,021
  22. 묻었다 40,436
  23. 마티쿄 37,766
  24. 보노보noo 36,708
  25. 우리집또털어 36,160
  26. 헉헉로 35,995
  27. 도라이 35,977
  28. 사랑하는가족 35,319
  29. 메이플젠문가 35,223
  30. 뿌리염색 32,594

huuon2.gif


겐조뮤.jpg


♨신규 게시물♨



광고베너.gif


♨신규 댓글♨



6faa2286ccd015fb37f28f688e13eac6.png

Autohotkey sleep 구문

asdtlkh2019.08.05 14:50조회 수 106댓글 0

  • 1
    • 글자 크기

Sleep 구문

 

Sleep 구문은 가장 쉬운 문장입니다.

말 그대로, 오토핫키 프로그램을 일정시간 일시정지 한다는 것이죠.

 

Sleep, [쉬는 시간] 으로 일반적으로 표현됩니다.

뒤의 단위는 ms로, 1000이 1초입니다.

Sleep, 1000의 경우 (일반적으로) 1초를 뜻하죠.

 

예문을 하나 봅시다.

 

F5::

Send,aaa

Sleep,1000

Send,bbb

Return

 

 

위와같이, aaa(한글로 ㅁㅁㅁ)이 입력되고

약 1초후에, bbb(한글로 ㅠㅠㅠ)가 입력되는것을 알 수가 있습니다.

 

 

 

Key Down과 연동하기

 

일반적으로, 키가 씹히는 흔히 "삑사리" 라고 말하는 것이

오토핫키에서는 빈번히 일어날수 있습니다.

이를 방지하기 위해, Key down 구문과 Sleep구문을 같이 쓰는 경우가 있는데요.

아래의 구문을 보시죠.

 

F5::

Send,{Shift Down}

Send,{a}

Send,{Shift Up}

Return

 

 

F6::

Send,{Shift Down}

Sleep,50

Send,{a}

Sleep,50

Send,{Shift Up}

Return

 

위의 F5의 경우, 중간에 Sleep이 없이 바로 쉬프트->A->쉬프트 떼기로 실행하지만

F6의 경우 중간에 Sleep을 넣어 딜레이를 주는것을 볼 수가 있습니다.

 

이렇게 함으로써, 쉬프트가 눌러져있는 기간을 길게 함으로써

키가 씹히는것을 방지할수 있습니다.

 

이는, 윈도우가 렉이 걸렸을때, 즉 사양이 낮은 경우 주로 사용하고

렉이 걸리는 온라인게임(메이플스토리, 바람의나라 등)에서도 자주 쓰이는 방법입니다.

 

또한, 나중에 알려줄 마우스 클릭도

이를 응용하는 경우 씹힘을 방지할 수 있습니다.

 

 

 

Sleep의 정확한 시간

 

위에서 눈치가 좋으신 분들은

Sleep, 1000이 "약" 1초라고 적은것을 보실수 있었을겁니다.

왜 정확히 1초를 재지 못하고, 약 1초로 표시한 것일까요?

 

컴퓨터는 여러분이 아시다시피, 아날로그가 아닌 디지털, 즉 0과 1로 되어있습니다.

그렇기 때문에 이런 지연 시간도, 결국 CPU의 계산에 따라서 흘러간다고 생각하시면 되는데요.

 

CPU에 일시정지를 걸어놔도, CPU가 다른곳에서 부하(계산)이 일어나는 경우

이 일시정지를 계산하는 시간이 약간씩 길어질 수 있습니다.

크게 부하가 일어나지 않아도, 똑똑한 CPU가

자원을 나눠쓰기 위해 CPU가 프로세스에 각각 시간을 나눠주는 경우가 생기기 때문에(±20ms)

아무리 정확히 할려 해도, 이는 정확히 할 수가 없습니다.

 

또한, OS에서도 프로세스에 따라서 시간조각(timeslice)를 나눠주기때문에(±20ms)

이에 따라서 딜레이가 조금씩 생기기 마련입니다.

 

결론적으로, Sleep 구문은 OS에 따라, CPU에 따라, 상황에 따라 조금씩 다르게 측정이 됩니다.

 

그렇기 때문에, 정확한 시간을 요구하는 프로그램을 작성하실때는

오토핫키가 아닌 다른 언어를 알아보시거나, 컴퓨터 내의 시간을 이용하는 방법(FormatTime 등)을 찾아보셔야 합니다.

 

 

  • 1
    • 글자 크기
Autohotkey send 구문 (by asdtlkh) 배그 - 오토핫키 반동제어 (by 메이플장인)

댓글 달기

첨부 (1)
1dce476ce707ba079a5ffc0de126b94e.gif
236.0KB / Download 0
">

서버에 요청 중입니다. 잠시만 기다려 주십시오...