Perché l’eccezione dell’operazione cross thread non viene generata durante l’esecuzione di exe in bin \ Debug

Stavo eseguendo il debug di un’applicazione e da qualche parte nel codice, un thread tenta di raggiungere una listbox creata da un altro thread. Nel tentativo di accedere alla casella di riepilogo, l’applicazione genera una “Operazione cross-thread non valida: controllo ‘ casella di riepilogo ‘ accessibile da un thread diverso dal thread che è stato creato su” eccezione durante il debug. Tuttavia, quando eseguo l’output di questa applicazione nella cartella bin \ Debug, non ottengo una finestra di dialogo delle eccezioni e posso vedere che la listbox è stata acceduta con successo dal thread non proprietario, quindi questo mi fa pensare che qui ci sia una differenza comportamentale , non solo un’eccezione soppressa. Posso superare questa eccezione nel debugging con la seguente riga nell’evento form_load

Control.CheckForIllegalCrossThreadCalls = false; 

Ma qual è la ragione dietro questo diverso comportamento?