|
@@ -143,6 +143,7 @@ class globCL(GCLMixin):
|
143
|
143
|
self.rconn = connect_redis()
|
144
|
144
|
self.rman = RldMan()
|
145
|
145
|
self.cbs_once = []
|
|
146
|
+ self.cbs_asap2 = []
|
146
|
147
|
self.cbs_asap = []
|
147
|
148
|
self.cbs_once_set = set()
|
148
|
149
|
self.cbs = {"fn1":fn1,"fn2x":nop}
|
|
@@ -150,10 +151,12 @@ class globCL(GCLMixin):
|
150
|
151
|
self.fast_timeout = .1
|
151
|
152
|
pass
|
152
|
153
|
async def persistent_fast_cb_loop(self,*a,**kw):
|
|
154
|
+
|
153
|
155
|
while 1:
|
154
|
|
- if len(self.cbs_asap):
|
155
|
|
- cbs_once = [*self.cbs_asap]
|
156
|
|
- self.cbs_asap=[]
|
|
156
|
+
|
|
157
|
+ if len(self.cbs_asap2):
|
|
158
|
+ cbs_once = [*self.cbs_asap2]
|
|
159
|
+ # self.cbs_asap2=[]
|
157
|
160
|
k=0
|
158
|
161
|
for v in cbs_once:
|
159
|
162
|
try:
|
|
@@ -174,6 +177,9 @@ class globCL(GCLMixin):
|
174
|
177
|
finally:
|
175
|
178
|
pass
|
176
|
179
|
k += 1
|
|
180
|
+ if len(self.cbs_asap):
|
|
181
|
+ self.cbs_asap2 = self.cbs_asap
|
|
182
|
+ self.cbs_asap=[]
|
177
|
183
|
await asyncio.sleep(self.fast_timeout)
|
178
|
184
|
async def persistent_loop(self,*a,**kw):
|
179
|
185
|
while 1:
|