gvalkov/python-evdev

timeout read_loop?

martin-flower opened this issue · 1 comments

This project is very helpful in enabling my python program to read input from a barcode reader whilst running as a cron job on reboot.

I would like to timeout the read_loop, after say 5 seconds, rather than wait forever for input which might never come.

Is this do-able?

I haven't tried it, but you might have luck with something like

event = asyncio.wait_for(input.async_read_one(), timeout=5)

which should raise an exception after the timeout, or

select.select([input.fd], [], [], 5)
event = input.read_one()

which should be None after the timeout