Originariamente inviato da MonsterMash
Però allo stesso tempo non mi viene in mente un altro modo per gestire i client in maniera asincrona.
Lo penso anch'io. In ogni modo credo che ti stia ponendo un problema inutile.
dal punto di vista dello sviluppo l'importante è che l'applicazione sia scalabile. Se i client connessi aumentano e noti un degrado che puoi risolvere "semplicemente" aumentando le cpu allora sei a cavallo.

poi credo che quanto piu lavorerai sull'ottimizzazione tanto piu l'applicazione scalerà meglio. Per esempio se nell'ambito dello stesso utente usi ulteriormente la programmazione asincrona per lavori come accessi alla rete o al filesystem consentiresti al sistema operativo di effettuare lo slice verso un altro thread nell'ambito della stessa sessione. Aumentano i thread e a parità di potenza di cpu l'applicazione degraderebbe ulteriormente ma è un approccio piu scalabile.

tutto imho perche personalmente non sono esperto in questo campo.