AppDomain.CurrentDomain.UnhandledException += CurrentDomainUnhandledException
Ännu en nybörjarfråga från en som försöker lära sig.
Jag håller på att göra om ett funktionsanrop från synkront till asynkront. Funktionen kastar undantag då och då, vilket jag tidigare har fångat genom:
try {
a = DoStuffInDatabase(variable);
} catch (Exception e) {
// Undantag kastades. Lös problemet!
}
Men hur fångar jag mina undantag om jag gör anropet asynkront? Jag har provat att försöka fånga både vid anropet och när resultatet ska hämtas, men det fungerar inte.
try {
DoStuffDelegate dlgt = new DoStuffDelegate(DoStuffInDatabase);
AsyncCallback cb = new AsyncCallback(cbFunc);
dlgt.BeginInvoke(variable, cb, dlgt);
} catch (Exception e) {
// Undantag kastades. Lös problemet!
}
....
private void cbFunc(IAsyncResult result) {
try{
DoStuffDelegate dlgt = (DoStuffDelegate) result.AsyncState;
a = dlgt.EndInvoke(result)
}catch (Exception e) {
// Undantag kastades. Lös problemet!
}
}
Hur gör man tro? :)
