Qual è una struttura di thread efficace per le prestazioni di NIO e server in C / C ++? [chiuso]

-2

Mi imbatto in questo problema, dove se faccio una lettura per controllare troppo spesso i dati, la mia CPU salta alle stelle, e se non controllo abbastanza spesso, è lenta per le prestazioni del client. Qual è un modo efficace per affrontare questo & NIO?

    
posta JavaProphet 05.08.2015 - 03:36
fonte

1 risposta

1

Non dovresti avere bisogno di controllare perché i dati vengano ricevuti da un socket. Vuoi chiedere al sistema operativo di dirti quando i dati sono stati ricevuti.

Con poll (o select ), puoi passarlo un gruppo di socket in una volta e un timeout grande (o infinito). poll restituirà alcuni dati ricevuti su uno qualsiasi dei socket che hai passato. Se non viene ricevuto nulla, continuerà ad attendere senza sprecare tempo CPU. Se qualcosa viene ricevuto, verrà restituito immediatamente.

    
risposta data 06.08.2015 - 04:17
fonte

Leggi altre domande sui tag