mirror of
https://github.com/django-q2/django-q2.git
synced 2026-10-02 15:28:12 +08:00
Use isinstance instead of typeof
This commit is contained in:
+8
-7
@@ -1,27 +1,28 @@
|
|||||||
"""Provides task functionality."""
|
"""Provides task functionality."""
|
||||||
# Standard
|
# Standard
|
||||||
from time import sleep, time
|
from time import sleep, time
|
||||||
from multiprocessing import Value
|
|
||||||
|
|
||||||
# django
|
# django
|
||||||
from django.db import IntegrityError
|
from django.db import IntegrityError
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
|
from multiprocessing import Value
|
||||||
|
|
||||||
|
from django_q.brokers import get_broker
|
||||||
# local
|
# local
|
||||||
from django_q.cluster import worker, monitor
|
from django_q.cluster import worker, monitor
|
||||||
from django_q.signing import SignedPackage
|
|
||||||
from django_q.conf import Conf, logger
|
from django_q.conf import Conf, logger
|
||||||
from django_q.models import Schedule, Task
|
|
||||||
from django_q.humanhash import uuid
|
from django_q.humanhash import uuid
|
||||||
from django_q.brokers import get_broker
|
from django_q.models import Schedule, Task
|
||||||
from django_q.signals import pre_enqueue
|
|
||||||
from django_q.queues import Queue
|
from django_q.queues import Queue
|
||||||
|
from django_q.signals import pre_enqueue
|
||||||
|
from django_q.signing import SignedPackage
|
||||||
|
|
||||||
|
|
||||||
def async_task(func, *args, **kwargs):
|
def async_task(func, *args, **kwargs):
|
||||||
"""Queue a task for the cluster."""
|
"""Queue a task for the cluster."""
|
||||||
keywords = kwargs.copy()
|
keywords = kwargs.copy()
|
||||||
opt_keys = ('hook', 'group', 'save', 'sync', 'cached', 'ack_failure', 'iter_count', 'iter_cached', 'chain', 'broker')
|
opt_keys = (
|
||||||
|
'hook', 'group', 'save', 'sync', 'cached', 'ack_failure', 'iter_count', 'iter_cached', 'chain', 'broker')
|
||||||
q_options = keywords.pop('q_options', {})
|
q_options = keywords.pop('q_options', {})
|
||||||
# get an id
|
# get an id
|
||||||
tag = uuid()
|
tag = uuid()
|
||||||
@@ -410,7 +411,7 @@ def async_iter(func, args_iter, **kwargs):
|
|||||||
broker = options['broker']
|
broker = options['broker']
|
||||||
broker.cache.set('{}:{}:args'.format(broker.list_key, iter_group), SignedPackage.dumps(args_iter))
|
broker.cache.set('{}:{}:args'.format(broker.list_key, iter_group), SignedPackage.dumps(args_iter))
|
||||||
for args in args_iter:
|
for args in args_iter:
|
||||||
if type(args) is not tuple:
|
if not isinstance(args, tuple):
|
||||||
args = (args,)
|
args = (args,)
|
||||||
async_task(func, *args, **options)
|
async_task(func, *args, **options)
|
||||||
return iter_group
|
return iter_group
|
||||||
|
|||||||
Reference in New Issue
Block a user