3

I have some synchronization problem.

from apscheduler.schedulers.background import BackgroundScheduler, BlockingScheduler
from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor
import time

budget = 100000

def plus() :
    global budget
    time.sleep(3)
    budget += 20000
    print('plus called, budget : ', budget)

def minus() :
    global budget
    budget -= 10000
    print('minus called, budget : ', budget)

executors = {'default' : ProcessPoolExecutor(1)}
sched = BackgroundScheduler(executors)

sched.add_job(plus, 'interval', seconds = 5, misfire_grace_time=20, max_instances=1)
sched.add_job(minus, 'interval', seconds = 6, misfire_grace_time=20,  max_instances=1)

sched.start()

How to make 'minus' starts after 'plus' to be completely done?

Ashtray K
  • 145
  • 10
  • this question answered in https://stackoverflow.com/questions/54996869/apschedulertrigger-new-job-after-completion-of-previous-job – nipun Sep 24 '21 at 06:47

0 Answers0