首页 > 解决方案 > Python `schedule` 计划任务的返回值去哪了?

问题描述

我有一个使用计划库运行的计划任务。我的任务的返回值去哪里了?退货与退货True的效果不同False吗?

例子:

def foo():
    return False

schedule.every().day.do(foo)
while True:
    schedule.run_pending()
    time.sleep(1)

标签: pythonschedule

解决方案


它不会“去”任何地方。每个对象都有一个引用计数,以及类似的调用

a = foo()

将简单地增加任何对象引用的引用计数False,以反映a现在也是对同一对象的引用。

在没有任何此类任务的情况下,例如

foo()

引用计数根本不增加。如果对该值的唯一其他引用是本地名称foo,则该对象将受到垃圾收集。


推荐阅读