2009-04-16 15 views
28

EsempioQual è l'exitContext utilizzato per su un metodo WaitHandle.WaitOne

System.Threading.AutoResetEvent e = new System.Threading.AutoResetEvent(false); 
bool b = e.WaitOne(1000, false); 

Ho fatto un sacco di sviluppo multi threaded nel mio tempo e sono sempre chiesto che l'uso del metodo di che era per. Il secondo parametro booleano su WaitOne si chiama exitContext. MS Help afferma "true per uscire dal dominio di sincronizzazione per il contesto prima dell'attesa (se in un contesto sincronizzato) e riacquistarlo successivamente, altrimenti, falso."

Qualcuno ha idea di cosa significhi? È qualcosa di cui dovrei essere preoccupato?

Cordiali saluti Noel

+2

Maledetta domanda. Mi sono sempre chiesto la stessa cosa, ma non ho mai avuto bisogno di usarlo ... AFAIK! –

risposta

11

Non posso affermare di credito (da qui wiki), ma c'è una buona risposta here.

+0

Grazie per il collegamento Marc, lo spiega perfettamente. – Bigtoe

+3

Nel caso in cui il collegamento non sia disponibile un giorno, la linea di fondo è che devi solo preoccuparti di 'exitContext' se stai usando una classe derivata da' ContextBoundObject' e con un attributo [Synchronization]. –

Problemi correlati