CHSHJ 发表于 2017-12-21 13:34:29

django+celery+redis实现运行定时任务

from celery import task  

from time import sleep  

  

  
@task()
  
def Task_A(message):
  
   Task_A.update_state(state='PROGRESS', meta={'progress': 0})
  
   sleep(10)
  
   Task_A.update_state(state='PROGRESS', meta={'progress': 30})
  
   sleep(10)
  
   return message
  

  

  
def get_task_status(task_id):
  
   task = Task_A.AsyncResult(task_id)
  

  
   status = task.state
  
   progress = 0
  

  
   if status == u'SUCCESS':
  
         progress = 100
  
   elif status == u'FAILURE':
  
         progress = 0
  
   elif status == 'PROGRESS':
  
         progress = task.info['progress']
  
   
  
   return {'status': status, 'progress': progress}
页: [1]
查看完整版本: django+celery+redis实现运行定时任务