() -chaos,
A1: , TL;DR TL;DR zmq.select() zmq.select() API/python
A2: TL;DR a .
Q2 , , , ( ) modus operandi.
?
, , :
while true:
...
break
while true:
...
break
, , , B - , , FSA- , DoS-, , , , .
, , , "" ( ), " " HI-PRIO.
, , Apollo Guidance Computer (AGC) MIT, - ,
, " ". " , , , ( ) - " ".
, , Apollo.
, .
ZeroMQ python , Poller(), - Poller() - , , . , /.
HiPRIOpoller = zmq.Poller()
LoPRIOpoller = zmq.Poller()
HiPRIOpoller.register( socket_0_pull, zmq.POLLIN )
LoPRIOpoller.register( ... , zmq.POLLIN )
LoPRIOpoller.register( ... , zmq.POLLIN )
...
aListOfHiPRIOevents = HiPRIOpoller.poll( timeout = 0.200 )
aListOfLoPRIOevents = LoPRIOpoller.poll( timeout = 0 )
...
Poller.poll() list , . ( socket, event ), { a-0MQ-Socket-instance | integer-system-native-fd } { a-0MQ-Socket-instance | integer-system-native-fd }, - ( POLLIN, POLLOUT ). aDictOfEVENTs = dict( aPoller.poll() ), { aSocket: anEvent,... } .
,
: MIT
, , . - , 60- , , ( ) .. ,
() -:
, .
, , .
ZERO-BUG, - , - , , , - - , , " " .
.
, .
, , .