python调度程序未关闭

python调度程序未关闭,python,python-2.7,apscheduler,Python,Python 2.7,Apscheduler,我试图通过删除作业并将其完全关闭来阻止apscheduler继续运行 它们都不工作,我的函数expire\u data仍会被触发 def process_bin(value): print "Stored:",pastebin.value print "Will expire in",pastebin_duration.value,"seconds!" if pastebin_duration>=0: scheduler = BlockingSch

我试图通过删除
作业
并将其完全关闭来阻止apscheduler继续运行

它们都不工作,我的函数
expire\u data
仍会被触发

def process_bin(value):
    print "Stored:",pastebin.value
    print "Will expire in",pastebin_duration.value,"seconds!"

    if pastebin_duration>=0:
        scheduler = BlockingScheduler()
        job=scheduler.add_job(expire_data, 'interval', seconds=5)
        scheduler.start()
        job.remove()
        scheduler.shutdown()

def expire_data():
    print "Delete data!"
我怎样才能阻止它

问题:我正试图阻止apscheduler运行

您使用的是
阻止调度程序
,因此您不能

APScheduler

BlockingScheduler是最简单的调度器。
它在前台运行,因此当您调用start()时,调用永远不会返回


了解

  • BlockingScheduler:当调度程序是进程中唯一运行的东西时使用
  • BackgroundScheduler:当您不使用以下任何框架,并且希望计划程序在应用程序的后台运行时使用
  • AsyncIOScheduler:如果应用程序使用asyncio模块,则使用
  • GeventScheduler:如果应用程序使用gevent,则使用
  • Tornado Scheduler:在构建Tornado应用程序时使用
  • TwistedScheduler:在构建Twisted应用程序时使用
  • QtScheduler:在构建Qt应用程序时使用
问题:我正试图阻止apscheduler运行

您使用的是
阻止调度程序
,因此您不能

APScheduler

BlockingScheduler是最简单的调度器。
它在前台运行,因此当您调用start()时,调用永远不会返回


了解

  • BlockingScheduler:当调度程序是进程中唯一运行的东西时使用
  • BackgroundScheduler:当您不使用以下任何框架,并且希望计划程序在应用程序的后台运行时使用
  • AsyncIOScheduler:如果应用程序使用asyncio模块,则使用
  • GeventScheduler:如果应用程序使用gevent,则使用
  • Tornado Scheduler:在构建Tornado应用程序时使用
  • TwistedScheduler:在构建Twisted应用程序时使用
  • QtScheduler:在构建Qt应用程序时使用

请使用Python2或3进行标记。抱歉,修复了Python2.7!你能粘贴一个完整的工作示例来重现这个问题吗?请用Python2或3标记。对不起,修复了,Python2.7!你能粘贴一个完整的工作示例来重现这个问题吗?