On page 19 of the Digi Python Programming Guide, the recvfrom method of the socket class takes an optional flag, "MSG_DONTWAIT to force a single socket transaction
to be non-blocking." Without this flag, my test code - as expected - blocks until data arrives. With this flag set however, I see the following:
Traceback (most recent call last):
File "<string>", line 65, in ?
File "<string>", line 36, in receive
socket.error: (11, 'No more processes')
If there is no data, shouldn't I just expect socket.recvfrom(72, MSG_NOWAIT) to return None rather than generating an exception?