타이머가 실행되는 동안 루비에 명령을 입력 하시겠습니까?

user3315570

저는 텍스트 기반 어드벤처 게임을 만들고 있는데, 사용자가 적을 만나고 3 초 동안 반응하는 인스턴스가 있습니다. 내 타이머 코드는 다음과 같습니다.

def timer
  puts "1"
  sleep(2)
  puts "2"
  sleep(2)
  puts "3"
  sleep(2)
end

이것은 작동하지만 1,2,3을 콘솔에 인쇄하는 동안 명령을 입력 할 수 없습니다. 예를 들어 타이머가 실행되는 동안 사용자가 '공격'을 입력 할 수 있기를 바랍니다. 현재 타이머 중에 명령을 입력 할 수 있지만 타이머가 완료 될 때까지 콘솔에 등록되지 않습니다. 할 수 있습니까?

감사

우리 아가시

다른 스레드에서 타이머를 실행해야합니다.

def timer
  Thread.new do
    puts "1"
    sleep(2)
    puts "2"
    sleep(2)
    puts "3"
    sleep(2)
  end
end

이제 타이머가 실행되는 동안 입력을들을 수 있습니다. 타이머가 만료되면 여전히 메인 로직과 다시 통신해야합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

이메일을 입력하는 동안 Android EditText에 과거 이메일을 표시 하시겠습니까?

분류에서Dev

사용자 입력을받는 동안 명령을 실행하는 방법이 있습니까?

분류에서Dev

콘솔 vim에 입력되는 명령을 표시 하시겠습니까?

분류에서Dev

출력을 파일에 기록하는 동안 명령을 실행하는 방법은 무엇입니까?

분류에서Dev

sh 명령을 실행하는 동안 Jenkinsfile 사용자 입력

분류에서Dev

% s 명령을 입력하는 동안 Neovim이 검색을 강조 표시하지 않습니까?

분류에서Dev

명령을 실행하고 타이머가 종료되는 방법은 무엇입니까? 씨#

분류에서Dev

실행 명령을 에뮬레이트 하시겠습니까?

분류에서Dev

이전 명령이 STDOUT에 쓰는 동안 다른 명령을 STDIN에 입력하는 것이 안전합니까?

분류에서Dev

다른 명령이 실행되기 전에 'clear'bash 명령을 실행하는 방법은 무엇입니까?

분류에서Dev

동일한 명령을 실행하면 pts / gnome-terminal보다 tty에서 더 많은 출력이 생성되는 이유는 무엇입니까?

분류에서Dev

루프가 활성화되어있는 동안 타이머가 실행되고 있습니까?

분류에서Dev

기존 명령이 실행되는 동안 새 명령을 어떻게 실행할 수 있습니까?

분류에서Dev

쉘에서 vscode 명령을 실행하는 것과 출력에 표시되는 명령의 차이점은 무엇입니까?

분류에서Dev

shell : 명령 실행이 시작된 후 얼마 동안 (예 : 2 분) 파일에서 입력을 시작하는 방법

분류에서Dev

해시에 사용자 입력을 추가 하시겠습니까? 루비

분류에서Dev

명령에 삽입시 구문 오류가 있습니다. 날짜 값을 입력하는 동안 오류가 발생할 수 있습니다.

분류에서Dev

특정 디렉토리에 들어가면 자동으로 명령을 실행 하시겠습니까?

분류에서Dev

명령에 입력을 입력 하시겠습니까?

분류에서Dev

InvalidOperationException unhandeled. 실행 중에는 오류가 표시되지 않지만 명령을 실행하는 동안에는 표시됩니다.

분류에서Dev

InvalidOperationException unhandeled. 실행 중에는 오류가 표시되지 않지만 명령을 실행하는 동안에는 표시됩니다.

분류에서Dev

sshj : 명령이 실행되는 동안 장기 실행 명령에서 InputStream을 읽는 방법

분류에서Dev

실행 파일이 Windows 일괄 처리에서 실행되는 동안 출력을 인쇄하는 방법은 무엇입니까?

분류에서Dev

Gvim 내에서 : shell 명령을 실행하는 동안 위 / 아래 화살표가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

VM이 실행되는 동안 명령 줄에서 VirtualBox에 게스트 추가 이미지를 "삽입"하는 방법은 무엇입니까?

분류에서Dev

명령 줄에서 명령 출력을 사용하는 동안 공백을 이스케이프하는 방법

분류에서Dev

주어진 시간 슬롯 동안 스레드에서 실행되는 최소 명령 수가 있습니까?

분류에서Dev

URL에 표시되는 ID 이름을 입력 하시겠습니까?

분류에서Dev

스크립트를 실행하는 동안 테일 로그에 기능을 추가 하시겠습니까?

Related 관련 기사

  1. 1

    이메일을 입력하는 동안 Android EditText에 과거 이메일을 표시 하시겠습니까?

  2. 2

    사용자 입력을받는 동안 명령을 실행하는 방법이 있습니까?

  3. 3

    콘솔 vim에 입력되는 명령을 표시 하시겠습니까?

  4. 4

    출력을 파일에 기록하는 동안 명령을 실행하는 방법은 무엇입니까?

  5. 5

    sh 명령을 실행하는 동안 Jenkinsfile 사용자 입력

  6. 6

    % s 명령을 입력하는 동안 Neovim이 검색을 강조 표시하지 않습니까?

  7. 7

    명령을 실행하고 타이머가 종료되는 방법은 무엇입니까? 씨#

  8. 8

    실행 명령을 에뮬레이트 하시겠습니까?

  9. 9

    이전 명령이 STDOUT에 쓰는 동안 다른 명령을 STDIN에 입력하는 것이 안전합니까?

  10. 10

    다른 명령이 실행되기 전에 'clear'bash 명령을 실행하는 방법은 무엇입니까?

  11. 11

    동일한 명령을 실행하면 pts / gnome-terminal보다 tty에서 더 많은 출력이 생성되는 이유는 무엇입니까?

  12. 12

    루프가 활성화되어있는 동안 타이머가 실행되고 있습니까?

  13. 13

    기존 명령이 실행되는 동안 새 명령을 어떻게 실행할 수 있습니까?

  14. 14

    쉘에서 vscode 명령을 실행하는 것과 출력에 표시되는 명령의 차이점은 무엇입니까?

  15. 15

    shell : 명령 실행이 시작된 후 얼마 동안 (예 : 2 분) 파일에서 입력을 시작하는 방법

  16. 16

    해시에 사용자 입력을 추가 하시겠습니까? 루비

  17. 17

    명령에 삽입시 구문 오류가 있습니다. 날짜 값을 입력하는 동안 오류가 발생할 수 있습니다.

  18. 18

    특정 디렉토리에 들어가면 자동으로 명령을 실행 하시겠습니까?

  19. 19

    명령에 입력을 입력 하시겠습니까?

  20. 20

    InvalidOperationException unhandeled. 실행 중에는 오류가 표시되지 않지만 명령을 실행하는 동안에는 표시됩니다.

  21. 21

    InvalidOperationException unhandeled. 실행 중에는 오류가 표시되지 않지만 명령을 실행하는 동안에는 표시됩니다.

  22. 22

    sshj : 명령이 실행되는 동안 장기 실행 명령에서 InputStream을 읽는 방법

  23. 23

    실행 파일이 Windows 일괄 처리에서 실행되는 동안 출력을 인쇄하는 방법은 무엇입니까?

  24. 24

    Gvim 내에서 : shell 명령을 실행하는 동안 위 / 아래 화살표가 작동하지 않는 이유는 무엇입니까?

  25. 25

    VM이 실행되는 동안 명령 줄에서 VirtualBox에 게스트 추가 이미지를 "삽입"하는 방법은 무엇입니까?

  26. 26

    명령 줄에서 명령 출력을 사용하는 동안 공백을 이스케이프하는 방법

  27. 27

    주어진 시간 슬롯 동안 스레드에서 실행되는 최소 명령 수가 있습니까?

  28. 28

    URL에 표시되는 ID 이름을 입력 하시겠습니까?

  29. 29

    스크립트를 실행하는 동안 테일 로그에 기능을 추가 하시겠습니까?

뜨겁다태그

보관