Asynchronous server hang when the tango server fails to start
If an asynchronous device server fails to start (because an exception has been raised in init_device
for instance), the program hangs. This could be fixed by replacing the following code in __server_run
:
tango_thread_id = worker.run_in_thread(tango_loop)
worker.run()
with:
tango_thread_id = worker.run_in_thread(tango_loop)
worker.run_until_complete(tango_thread_id)
@tiagocoutinho This fix should work for asyncio mode, but what about gevent?