Python执行任务[重复]

Posted

技术标签:

【中文标题】Python执行任务[重复]【英文标题】:Python execute task [duplicate] 【发布时间】:2016-01-27 07:53:02 【问题描述】:

我有一个带有无限期阻塞任务方法的 Python 类

class A(object):
   def __init__(self):
       # start task

   def task(self):
       while True:
           #do some work

我想在 A 的构造函数中开始执行任务。由于任务阻塞,它可能需要在自己的线程中运行。如何在 Python 2.7 中做到这一点?

【问题讨论】:

您可以使用单独的进程 (docs.python.org/2/library/multiprocessing.html) 线程可以使用threading 模块执行。 【参考方案1】:

就像 cmets 中提到的,有一个模块 threading 似乎完全适合您的任务。示例:

import threading

class A(object):
   def __init__(self):
       threading.Thread(target=self.task).start()

   def task(self):
       print 'Hello from a Thread'

a = A()

# output: 'Hello from a Thread'

【讨论】:

以上是关于Python执行任务[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python 3多处理 - 如何执行单个任务

【celery】任务重复执行

宝塔定时任务重复怎么办

.net core多个重复任务执行顺序

Quartz重复执行问题记录

使用spring的定时任务时遇到重复执行