Sì, ci sono diversi modi per farlo, tra questi multiplexing I/O, I/O di guida di segnale e I/O asincroni.
È probabile che per i tuoi scopi multiplexing sarà sufficiente ed è di gran lunga il più semplice da implementare e ottenere bene. Indagare Selezionare, sondaggio o EPOLL Ci sono molte articoli, riferimenti ed esempi disponibili e non carenza di domande/risposte qui per aiutarti a iniziare. I linguaggi di programmazione più comuni hanno un meccanismo per esporre questi servizi.