def get_queues(*queue_names, **kwargs):
"""
Return queue instances from specified queue names.
All instances must use the same Redis connection.
"""
from .settings import QUEUES
autocommit = kwargs.get('autocommit', None)
queue_class = kwargs.get('queue_class', DjangoRQ)
if len(queue_names) == 0:
# Return "default" queue if no queue name is specified
return [get_queue(autocommit=autocommit)]
if len(queue_names) > 1:
queue_params = QUEUES[queue_names[0]]
connection_params = filter_connection_params(queue_params)
for name in queue_names:
if connection_params != filter_connection_params(QUEUES[name]):
raise ValueError(
'Queues must have the same redis connection.'
'"{0}" and "{1}" have '
'different connections'.format(name, queue_names[0]))
return [get_queue(name, autocommit=autocommit, queue_class=queue_class) for name in queue_names]
评论列表
文章目录