2014-12-10 17 views
5

Tôi đang cố gắng viết chương trình sẽ yêu cầu người dùng trả lời câu hỏi bằng cách sử dụng gets.chomp sau ba giây hoặc câu trả lời sẽ tự động trả về sai.Làm thế nào để timeout được.chomp

Tôi đã tìm ra mọi thứ ngoại trừ phần thời gian chờ và tôi đã tự hỏi liệu có ai đó có thể giúp bạn không.

+1

Hiện chúng tôi mã của bạn. – Cthulhu

+1

Xem [Timeout] (http://www.ruby-doc.org/stdlib-2.1.5/libdoc/timeout/rdoc/Timeout.html). –

Trả lời

-4

Tôi đã viết một số mã cho việc này.

def question_time 
    puts "Your question here" 
    t = Time.now 
    answer = gets.chomp 
    Time.now - t > 3 ? false : answer 
end 
+0

Vấn đề là 'được' sẽ chặn vô thời hạn, vì vậy nếu người dùng không làm gì, chương trình sẽ không bao giờ kết thúc. – Carpetsmoker

+0

Câu trả lời này là sai. Tôi khuyên bạn nên loại bỏ nó. Nó hoàn toàn bỏ qua cốt lõi của câu hỏi và, ngoài ra, tôi không biết làm thế nào và khi nào mã này sẽ hữu ích. Câu hỏi yêu cầu một chương trình tự động trả về false nếu người dùng không trả lời trong vòng 3 giây, nhưng mã này sẽ chờ (mãi mãi) cho đến khi người dùng đưa ra dữ liệu đầu vào, như 'thực thi khối'. –

Các vấn đề liên quan