Net, întreruperea fluxului de

Uneori este util să se întrerupă fluxul normal la încheierea acestuia. De exemplu, debugger poate fi necesară întreruperea fluxului out-of-control. După fluxul de întrerupere este îndepărtat din sistem și nu poate fi pornit din nou. Abort () metoda este utilizată pentru a întrerupe fluxul normal la încheierea acestuia. Mai jos este forma cea mai simplă a acestei metode:

Abort (), metoda creează condițiile necesare pentru a genera excepții ThreadAbortException în thread pentru care a fost numit. Această excludere conduce la întreruperea fluxului și poate fi prins în cod-program, dar în acest caz, este generat automat încă o dată pentru a opri fluxul. Abandonați () metoda nu este întotdeauna în măsură să oprească imediat fluxul, așa că, dacă doriți să opriți fluxul înainte de a continua programul după metoda Renunt () ar trebui să solicite imediat Alăturați-vă metoda ().

În plus, în cazuri foarte rare, Renunt () metoda nu reușește să oprească fluxul. Acest lucru se întâmplă, de exemplu, în cazul în care în cele din urmă blocul de cod intră într-o buclă infinită. În aplicarea metodei Abandonare () următorul exemplu ilustrează programul pentru a întrerupe fluxul:

Abandonați () metodă nu ar trebui să fie utilizat ca un mijloc obișnuit de întreruperea fluxului, deoarece este destinat pentru cazuri speciale. De obicei, fluxul ar trebui să fie finalizată într-un mod natural, a existat o revenire la metoda de realizare a rolului punctului de intrare în ea.

În unele cazuri, este o altă formă de metodă utilă Abort (), sub forma generală:

în cazul în care stateInfo înseamnă orice informații pe care doriți să le transferați în aval, atunci când se oprește. Aceste informații sunt disponibile prin proprietățile clasei excepții ExceptionState ThreadAbortException. În mod similar, fluxul poate trece codul de finalizare.

Apelarea ResetAbort () poate eșua în cazul în care nu există nici un flux în mod adecvat sigură de anulare întrerupere a fluxului prematură. Să modificăm exemplul de mai sus: