File tree Expand file tree Collapse file tree 1 file changed +10
-0
lines changed
api_drivers/common_api_drivers/frozen/other Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -60,6 +60,7 @@ def __init__(
6060 callback = self ._timer_cb
6161 )
6262 self ._scheduled = 0
63+ self ._running = False
6364
6465 def add_event_cb (self , callback , event , user_data = _DefaultUserData ):
6566 for i , (cb , evt , data ) in enumerate (self ._callbacks ):
@@ -101,6 +102,8 @@ def _task_handler(self, _):
101102 self ._scheduled -= 1
102103
103104 if lv ._nesting .value == 0 :
105+ self ._running = True
106+
104107 run_update = True
105108 for cb , evt , data in self ._callbacks :
106109 if not evt ^ TASK_HANDLER_STARTED :
@@ -148,12 +151,19 @@ def _task_handler(self, _):
148151 ticks_diff = time .ticks_diff (stop_time , start_time )
149152 lv .tick_inc (ticks_diff )
150153
154+ self ._running = False
155+
151156 except Exception as e :
157+ self ._running = False
158+
152159 if self .exception_hook :
153160 self .exception_hook (e )
154161
155162 def _timer_cb (self , _ ):
156163 lv .tick_inc (self .duration )
164+ if self ._running :
165+ return
166+
157167 if self ._scheduled < self .max_scheduled :
158168 try :
159169 micropython .schedule (self ._task_handler_ref , 0 )
You can’t perform that action at this time.
0 commit comments