루비 프로그램에게 잠시 기다리라고 말합니다.
Ruby 프로그램에 다음 코드 행으로 이동하기 전에 임의의 시간을 기다리도록 지시하는 방법은 무엇입니까?
다음과 같이:
sleep(num_secs)
그num_secs값은 정수 또는 부동 소수일 수 있습니다.
또한 레일즈 앱 내에서 이를 작성하거나 프로젝트에 ActiveSupport 라이브러리를 포함한 경우 다음과 같은 편리한 구문을 사용하여 더 긴 간격을 구성할 수 있습니다.
sleep(4.minutes)
# or, even longer...
sleep(2.hours); sleep(3.days) # etc., etc.
# or shorter
sleep(0.5) # half a second
수면은 다음과 같이 사용합니다.
sleep 2
그것은 2초 동안 잠을 잘 것입니다.
논쟁을 하는 것을 조심하세요.그냥 도망치면,sleep프로세스가 영구 절전 모드로 전환됩니다. (스레드가 깨울 때까지 절전 모드로 전환할 때 유용합니다.)
찾았습니다until수면에 매우 유용합니다.예:
> time = Time.now
> sleep 2.seconds until Time.now > time + 10.seconds # breaks when true
> # or
> sleep 2 and puts 'still sleeping' until Time.now > time + 10
> # or
> sleep 1.seconds until !req.loading # suggested by ohsully
이것처럼.
sleep(no_of_seconds)
또는 다음과 같은 다른 가능한 인수를 전달할 수 있습니다.
sleep(5.seconds)
sleep(5.minutes)
sleep(5.hours)
sleep(5.days)
레일 방식인 초/분/시간 구현.암묵적인 반품은 필요하지 않지만, 더 깨끗해 보이기 때문에 저는 그것들을 선호합니다.Rails가 .days를 가지고 있는지, 더 멀리 가는지는 모르겠지만, 이것들이 제가 필요로 하는 것들입니다.
class Integer
def seconds
return self
end
def minutes
return self * 60
end
def hours
return self * 3600
end
def days
return self * 86400
end
end
이 후에는 다음 작업을 수행할 수 있습니다.sleep 5.seconds5초 동안 잠을 자는 것.할수있습니다sleep 5.minutes5분 동안 잠을 자는 것.할수있습니다sleep 5.hours5시간 동안 잠을 자는 것.그리고 마지막으로, 당신은 할 수 있습니다.sleep 5.days5일동안 잠을 자는것...self *(해당 기간의 초) 값을 반환하는 모든 메서드를 추가할 수 있습니다.연습으로, 몇 달 동안 그것을 실행해 보세요!
sleep 66초 동안 잘 거예요.더 오랜 기간 동안 사용할 수도 있습니다.sleep(6.minutes)또는sleep(6.hours).
다음은 사용 예입니다.sleep와 함께sidekiq
require 'sidekiq'
class PlainOldRuby
include Sidekiq::Worker
def perform(how_hard="super hard", how_long=10)
sleep how_long
puts "Workin' #{how_hard}"
end
end
10초간 자고 인쇄합니다."Working super hard".
언급URL : https://stackoverflow.com/questions/1329967/tell-ruby-program-to-wait-some-amount-of-time
'programing' 카테고리의 다른 글
| Xcode 7의 "변환 전용 계층에서 속성 마스크 ToBounds 변경, 영향을 미치지 않음" (0) | 2023.06.08 |
|---|---|
| @angular/cdk-experimental이 있는 Angular 재료 2 표에서 가상 스크롤 사용 (0) | 2023.06.08 |
| Angular2 폼 태그 내에서 fgModel을 사용하는 경우 이름 속성을 설정하거나 폼을 설정해야 합니다. (0) | 2023.06.08 |
| Firebase - 앱을 삭제하고 다시 설치해도 사용자 인증이 취소되지 않습니다. (0) | 2023.06.08 |
| 이클립스의 Javascript Validation에서 Javascript 파일을 제외하는 방법 (0) | 2023.06.08 |