Non c'è un numero definito.
Il codice è in esecuzione su un solo thread, il thread principale. La chiamata a Console.ReadLine
non crea un nuovo thread, avvia appena una richiesta I/O e attende che venga elaborata, non richiede thread, ma poiché si utilizza l'API sincrona, non è possibile rilasciare il thread, quindi blocca solo Se l'intervistatore voleva un solo numero, questo è il numero - è l'unico thread dell'applicazione che hai, tutto il resto è un dettaglio di implementazione.
Esistono molti thread di infrastruttura: i thread di Garbage Collector sono i principali e alcuni di questi vengono creati e distrutti tutto il tempo.
Infine, ci sono i fili da qualche parte nel mezzo - in particolare, il pool di thread. Poiché non si utilizza il pool di thread, avrà il numero predefinito di thread, a meno che la configurazione non indichi diversamente, di solito si tratta di due thread per core della CPU logica.
La realtà va ancora più in profondità. Ad esempio, i thread .NET sono thread gestiti e possono saltare tra i thread "nativi" alla volontà del runtime. Tuttavia, questo è qualcosa a cui non devi mai preoccuparti, a meno che tu non stia scrivendo il tuo runtime .NET o un sistema operativo :) Oppure, facendo un interop pesante con il codice nativo che dipende dall'affinità del thread nativo (di nuovo, non molto comune) .
Sospetto che lo scopo principale della domanda sia farvi parlare di come funziona il modello di threading di Windows, di come .NET gestisce i thread e di quali tipi di thread ci sono in una tipica applicazione Windows/.NET. Ma soprattutto, per farti parlare: P
Per quanto riguarda l'applicazione è interessato, non v'è un solo thread. Se il sistema operativo crea thread aggiuntivi dietro le quinte, si tratta di dettagli di implementazione irrilevanti dal punto di vista dell'applicazione. –
E 'Console.ReadLine();' blocca solo il thread in cui lo stai eseguendo. –
L'intervistatore ha probabilmente qualche esperienza con il debug di WinDbg, https://www.jayway.com/2011/04/26/getting-started -with-managed-dump-files-using-windbg/in modo che lui/lei possa penetrare più in profondità nel processo e nei thread di te. Se si padroneggiano gli strumenti e i suggerimenti, tali domande non costituiranno un ostacolo in futuro. –