shangwei

导包;

import Queue
import threading

直接上代码:

class ReportThreadTask(object):
    task_queue = Queue.Queue()

    def __init__(self):
        self.immediate_thread = None
        self.start()

    def start(self):
        self.immediate_thread = threading.Thread(target=self._exec_report_thread)
        self.immediate_thread.daemon = True
        self.immediate_thread.start()

    def _exec_report_thread(self):
        while True:
            queue_len = self.task_queue.queue
            if queue_len:
                task = self.task_queue.get(timeout=5)
                if task:
                    try:
                        # 执行线程任务
                pring(\'1111111\')  
                    except Exception, e:
                        logging.error("immediate report except {0}".format(e))
            time.sleep(1)

    @classmethod
    def add_task(cls, task):
        cls.task_queue.put(task)

直接调用即可:

rtt = ReportThreadTask()
rtt.add_task(params)

  

分类:

技术点:

相关文章:

  • 2021-12-18
  • 2022-12-23
  • 2021-11-20
  • 2021-10-07
  • 2022-01-25
  • 2021-05-17
  • 2021-12-19
  • 2021-12-18
猜你喜欢
  • 2021-09-02
  • 2022-12-23
  • 2021-05-21
  • 2022-02-28
  • 2021-08-16
  • 2021-06-23
相关资源
相似解决方案