Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ad4bd9a

Browse files
committed
EINTR, EINTR eveywhere!
for some reason, zmq thorw EINTR on getsockopt calls now... ref 0rpc#62
1 parent 0762868 commit ad4bd9a

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

zerorpc/gevent_zmq.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,14 @@ def _on_state_changed(self, event=None, _evtype=None):
7070
self._readable.set()
7171
return
7272

73-
events = self.getsockopt(_zmq.EVENTS)
73+
while True:
74+
try:
75+
events = self.getsockopt(_zmq.EVENTS)
76+
break
77+
except ZMQError as e:
78+
if e.errno not in (_zmq.EAGAIN, errno.EINTR):
79+
raise
80+
7481
if events & _zmq.POLLOUT:
7582
self._writable.set()
7683
if events & _zmq.POLLIN:

0 commit comments

Comments
 (0)