Ожидание нескольких событий C ++
Есть ли рекомендуемый способ ожидания на нескольких входах. Например, я бы хотел, чтобы моя программа могла получать данные из 3 источников:
Слушайте состояние потока, например pthread_cond_wait ()
Взять данные из стандартного ввода, например GetLine ()
Слушайте на сокете, например принимаем ()
Каков наилучший способ сделать это? Нужен ли поток для каждого источника? Спасибо