What does select() for me? I mainly use it as a non-blocking call which rapidly checks file descriptors for new information. Based on this, I can continue to perform other computing activities which are in my processes background, but also be ready to grab data from those one or more descriptors as soon as something is available.
The following code has been simplified to cover the main points surround how I use select().
Code:
__attribute__((noreturn))void run_sensor_process(int
...