Bir istisna ile nasıl başa çıkılacağı konusunda biraz kafam karıştı.Arka plan çalışanı özel durum işlenmesi
Uzun süren bir işlem yürüten bir arka plan iş parçacığım var. Benim anlayışım arka plan çalışan iş parçacığı üzerinde bir özel durum ortaya çıkarsa, kod hala RunWorkerCompleted yönteminde sona erecektir. Bu durumda bgWorker.RunWorkerAsync etrafında bir deneyin catch bloğu koyarak bir anlamı yoktur edilir ise
void bgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
if (e.Error != null)
throw e.Error;
(); çağrı, ben değil mi?
RunWorkerCompleted yönteminde yakalanan istisnayı yeniden değerlendirmek istiyorum, bunu yığın izini kaybetmeden nasıl yapabilirim - doğru olanı nedir? Bir istisna atarken sadece "atma" kullanmanız gerektiğini okudum?
deneyin bu özel durum yakalamak mümkün olmayabilir olacak ama onun Etmezdim Benim RunWorkerCompleted yöntemimde herhangi bir hata işlemek gerekir? Veya RunWorkerCompleted yöntemindeki herhangi bir hatayla başa çıkmak daha iyi bir uygulama mı? – mHelpMe
İş parçacığınızdaki özel durumla başa çıkacaksanız, bunu RunWorkerCompleted'e alamayacaksınız ve eğer DoWork'ta kullanamıyorsanız, yanlış bir şey yaparsanız uygulamanız çökebilir –