Hello! I am just trying to get familiar with asyncio. It seems to be a good thing, however, I am still having troubles and feel pretty puzzled although I think I got the point what async IO means. This is the problem I am trying to accomplish:
I have some functions which are reading values from hardware. If one of the values changes, I want a corresponding notification to the connected clients. The network part shouldn't be the problem. Here is what I got so far: @asyncio.coroutine def check(): old_val = read_value_from_device() yield from asyncio.sleep(2) new_val = read_value_from_device() # we may have fluctuations, so we introduce a threshold if abs(new_val-old_val) > 0.05: return new_val else: return None @asyncio.coroutine def runner(): while 1: new = yield from check() print(new) loop = asyncio.get_event_loop() loop.run_until_complete(update()) Is this the way one would accomplish this task? Or are there better ways? Should read_value_from_device() be a @coroutine as well? It may contain parts that take a while ... Of course, instead of print(new) I would add the corresponding calls for notifying the client about the update. Thanks! -- https://mail.python.org/mailman/listinfo/python-list