helpers.py 文件源码

python
阅读 16 收藏 0 点赞 0 评论 0

项目:yawn 作者: aclowes 项目源码 文件源码
def delay(func, *args, timeout=None, max_retries=0, queue=None):
    arguments = [shlex.quote(arg) for arg in args]
    command = 'yawn exec {0.__module__} {0.__name__} {1}'.format(
        func, ' '.join(arguments)).strip()
    task_name = '{0.__module__}.{0.__name__}({1})'.format(
        func, ', '.join(arguments))

    if queue:
        queue_obj, _ = Queue.objects.get_or_create(name=queue)
    else:
        queue_obj = Queue.get_default_queue()

    template, _ = Template.objects.get_or_create(
        name=task_name,
        command=command,
        queue=queue_obj,
        max_retries=max_retries,
        timeout=timeout
    )
    task = Task.objects.create(
        template=template
    )
    task.enqueue()
    return task
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号