File tree Expand file tree Collapse file tree 1 file changed +8
-5
lines changed
Expand file tree Collapse file tree 1 file changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -22,8 +22,11 @@ class Task:
2222 def __init__ (self , carrot : 'Carrot' , message : 'Message' ) -> None :
2323 self ._carrot = carrot
2424 self ._message = message
25- self ._cron = croniter (message .schedule , datetime .now (timezone .utc ))
26- self ._sync ()
25+
26+ now = datetime .now (timezone .utc )
27+
28+ self ._cron = croniter (message .schedule , now )
29+ self ._sync (now )
2730
2831 async def run (self ):
2932 logger .info (f'Scheduled task <{ self ._message .name } > has been queued' )
@@ -32,16 +35,16 @@ async def run(self):
3235
3336 def is_due (self , now : datetime ) -> bool :
3437 if self ._resync_at_next_tick :
35- self ._sync ()
38+ self ._sync (now )
3639
3740 return now >= self ._next_run
3841
3942 @property
4043 def next_run (self ) -> datetime :
4144 return self ._next_run
4245
43- def _sync (self ) -> None :
44- self ._next_run = self ._cron .get_next (datetime )
46+ def _sync (self , start_datetime : datetime ) -> None :
47+ self ._next_run = self ._cron .get_next (datetime , start_time = start_datetime )
4548 self ._resync_at_next_tick = False
4649
4750
You can’t perform that action at this time.
0 commit comments