首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >APScheduler会打开更多的线程

APScheduler会打开更多的线程
EN

Stack Overflow用户
提问于 2017-10-18 09:54:34
回答 1查看 3K关注 0票数 3

Python3.5.2,APScheduler 3.3.1

APScheduler启动了许多线程,我想知道原因。

这是我正在执行的代码(在PyCharm中,我也可以绘制线程):

代码语言:javascript
复制
from apscheduler.schedulers.background import BackgroundScheduler
import time

def process_to_execute():
    time.sleep(0.5)

scheduler = BackgroundScheduler()
scheduler.add_job(process_to_execute, 'cron', second="*/1")
scheduler.start()

while True:
    time.sleep(1)

线程图是:

为什么APScheduler要创建这么多线程,而一个线程就足够了?

线程-7是在1.6秒内创建的。它的任务以2.1秒的速度完成。一个新任务在2.6秒内执行:不是立即使用Thread-7,而是创建Thread-8,但任务在thread-7中执行,而线程-8则为空.这有什么原因吗?

调度程序的线程数限制在10个。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-19 07:28:54

APScheduler使用标准库的concurrent.futures.ThreadPoolExecutor,它有点懒于此。怪不得。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46807428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档