本文整理汇总了Python中queue.Queue.add_pickled_jobs_to_front方法的典型用法代码示例。如果您正苦于以下问题:Python Queue.add_pickled_jobs_to_front方法的具体用法?Python Queue.add_pickled_jobs_to_front怎么用?Python Queue.add_pickled_jobs_to_front使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类queue.Queue
的用法示例。
在下文中一共展示了Queue.add_pickled_jobs_to_front方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Worker
# 需要导入模块: from queue import Queue [as 别名]
# 或者: from queue.Queue import add_pickled_jobs_to_front [as 别名]
class Worker(object):
# A worker dequeues and executes jobs from the queue
def __init__(self, host, port, db, queue_name, time_out):
self.queue = Queue(host, port, db, queue_name)
self.current_pickled_job = None
self.time_out = time_out
# Register handlers for SIGINT and SIGTERM
signal.signal(signal.SIGINT, self.handle_exit)
signal.signal(signal.SIGTERM, self.handle_exit)
def work(self):
while True:
# Block until a job can be dequeued from the queue. Then execute it
job_tuple = self.queue.dequeue(self.time_out)
if job_tuple is not None:
self.current_pickled_job, job = job_tuple
job.start(self)
else:
break
def job_finished(self, job_id):
self.current_pickled_job = None
def handle_exit(self, signal, frame):
# When the program has to shutdown before the current job is done
# executing, add it back to the front of the queue.
if self.current_pickled_job is not None:
self.queue.add_pickled_jobs_to_front(self.current_pickled_job)
sys.exit()