所以我在 VB.Net 中工作,偶尔会遇到未处理的异常。我没有得到的是我有一个针对所述异常的 catch 块。
这是我正在谈论的示例。
Try
If MyTask3 IsNot Nothing Then
MyTask3.Control(TaskAction.Abort)
MyTask3.Dispose()
End If
Catch ex As DaqException
ErrorMessage = ex.ToString()
MyTask3.Dispose()
Catch ex As AccessViolationException
ErrorMessage = ex.ToString()
MyTask3.Dispose()
Catch ex As ObjectDisposedException
ErrorMessage = ex.ToString()
Catch ex As Exception
ErrorMessage = ex.ToString()
Finally
Task3Aborted = True
End Try
所以在测试上面的代码片段时,我有时会得到一个 AccessViolationException (调试器说它是未处理的,即使它有一个 Catch )。我单步执行代码,执行的捕获是 ObjectDisposedException。
那么这是我抛出两个异常并且只处理一个而另一个未处理的情况吗?这甚至可能吗?
提前感谢您的帮助。