本文整理汇总了Python中aiorq.Queue.dequeue_any方法的典型用法代码示例。如果您正苦于以下问题:Python Queue.dequeue_any方法的具体用法?Python Queue.dequeue_any怎么用?Python Queue.dequeue_any使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类aiorq.Queue
的用法示例。
在下文中一共展示了Queue.dequeue_any方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_dequeue_any
# 需要导入模块: from aiorq import Queue [as 别名]
# 或者: from aiorq.Queue import dequeue_any [as 别名]
def test_dequeue_any():
"""Fetching work from any given queue."""
fooq = Queue('foo')
barq = Queue('bar')
assert not (yield from Queue.dequeue_any([fooq, barq], None))
# Enqueue a single item
yield from barq.enqueue(say_hello)
job, queue = yield from Queue.dequeue_any([fooq, barq], None)
assert job.func == say_hello
assert queue == barq
# Enqueue items on both queues
yield from barq.enqueue(say_hello, 'for Bar')
yield from fooq.enqueue(say_hello, 'for Foo')
job, queue = yield from Queue.dequeue_any([fooq, barq], None)
assert queue == fooq
assert job.func == say_hello
assert job.origin == fooq.name
assert job.args[0] == 'for Foo', 'Foo should be dequeued first.'
job, queue = yield from Queue.dequeue_any([fooq, barq], None)
assert queue == barq
assert job.func == say_hello
assert job.origin == barq.name
assert job.args[0] == 'for Bar', 'Bar should be dequeued second.'
示例2: test_dequeue_any_ignores_nonexisting_jobs
# 需要导入模块: from aiorq import Queue [as 别名]
# 或者: from aiorq.Queue import dequeue_any [as 别名]
def test_dequeue_any_ignores_nonexisting_jobs():
"""Dequeuing (from any queue) silently ignores non-existing jobs."""
q = Queue('low')
uuid = '49f205ab-8ea3-47dd-a1b5-bfa186870fc8'
yield from q.push_job_id(uuid)
# Dequeue simply ignores the missing job and returns None
assert (yield from q.count) == 1
assert not (yield from Queue.dequeue_any([Queue(), Queue('low')], None))
assert not (yield from q.count)