Tôi có một chức năng thỉnh thoảng bị treo. Thông thường tôi sẽ đặt báo thức, nhưng tôi đang ở trong Windows và không có sẵn. Có một cách đơn giản xung quanh này, hay tôi chỉ cần tạo một thread gọi time.sleep()?signal.alarm thay thế trong Windows [Python]
Đã kết thúc bằng một chuỗi. Chỉ lừa được sử dụng os._exit
thay vì sys.exit
import os
import time
import threading
class Alarm (threading.Thread):
def __init__ (self, timeout):
threading.Thread.__init__ (self)
self.timeout = timeout
self.setDaemon (True)
def run (self):
time.sleep (self.timeout)
os._exit (1)
alarm = Alarm (4)
alarm.start()
time.sleep (2)
del alarm
print 'yup'
alarm = Alarm (4)
alarm.start()
time.sleep (8)
del alarm
print 'nope' # we don't make it this far
Ông có thể loại bỏ các câu trả lời từ * Câu hỏi của bạn * và gửi nó như một ... thực tế * câu trả lời *? – ThiefMaster
bạn có thể [sử dụng 'threading.Timer()' thay thế] (http://stackoverflow.com/a/28081214/4279) – jfs
@ThiefMaster đã hoàn tất! – LondonRob