如何從apscheduler獲取返回值

2021-10-22 23:25:39 字數 1628 閱讀 9239

目前好像不能通過return傳遞的方式獲取apscheduler的返回值,簡單粗暴的方式是通過設定全域性變數,如果你的job和主程式在同乙個檔案,這非常簡單(參考鏈結):

from apscheduler.schedulers.blocking import blockingscheduler

from apscheduler.triggers.cron import crontrigger

deffn()

:'''increase `times` by one and print it.'''

global times

times +=

1print

(times)

sched = blockingscheduler(

)times =

0# execute fn() each second.

sched.add_job(fn, trigger=crontrigger(second=

'*/1'))

sched.start(

)

如果你的job和主程式不在同乙個檔案,則需要額外的工作輔助一下,但仍然借助這個思想,假設我們的job程式為work.py,內容如下:

#!/usr/bin/python3

defwork()

:return

"work"

主程式內容如下(預設主程式和work.py在同乙個資料夾內):

#!/usr/bin/python3

__author__ =

"xinwenfei"

#source :

from work import work

from apscheduler.schedulers.background import backgroundscheduler

from apscheduler.events import event_job_error, event_job_executed

retval =

0def

listener

(event)

:global retval

ifnot event.exception:

retval = event.retval

if __name__ ==

"__main__"

: scheduler = backgroundscheduler(

) scheduler.add_listener(listener, event_job_executed | event_job_error)

scheduler.add_job(work,

'interval'

, seconds=

2, start_date=

'2021-03-09 09:31:47'

) scheduler.start(

)print

("return value: "

, retval)

SpringMVC從Request域中獲取資料

springmvc環境自行搭建,約定存在如下目錄和檔案 web inf pages success.jsp 前端介面 a href 專案名 getrequestvalue 獲取request域中的值 a 後台 public string getrequestvalue model model 寫法一...

android TextView 如何動態獲取寬度

1.當textview的屬性是wrap content時,在介面還沒顯示時,是無法獲取其顯示後的長和寬的,那麼怎麼獲取呢?可以通過測量的方法預先測量出來。很簡單。textview tv findviewbyid r.id.tv name tv name settext str int spec vi...

shell模擬php多程序從redis獲取資料

背景 現在的資料已經寫到了redis佇列裡面,完成了入棧的操作,後期打算從redis獲取資料,完成出棧的操作,出棧後然後做一系列的邏輯處理 環境 vmware虛擬機器 記憶體 1g 硬碟 60g php環境 php version 5.6.31 php框架 tp 測試 事先在redis裡面插入了70...