次のように機能する長時間実行操作用のジョブオブジェクトがあります。
Class LongRunningJob
Inherits BackgroundWorker
Protected Overrides Sub OnDoWork(ByVal e As System.ComponentModel.DoWorkEventArgs)
'do long running job here
End Sub
End Class
そして、私はこれを次のように呼び出します:
Dim job As New LongRunningJob
'run it
job.RunWorkerAsync()
これは1年前はうまくいきました、そして私は他のことに移りました。今日はこのコードに戻らなければなりませんでしたが、今実行すると、OnDoWork
オーバーライドは呼び出されません。そこにあるブレークポイントはヒットせず、デバッグメッセージは書き込まれず、メソッドは単に呼び出されず、エラーはどこにもスローされません。
低レベルのフレームワークのように見えるので、これを引き起こす可能性のある変更が何であったかは考えられません。アプリの残りの部分は正常に読み込まれて実行され、メインウィンドウに表示され(WPFアプリです)、ボタンクリックイベントが発生します。起動しないのはバックグラウンドスレッドメソッドだけです。ここで何が起こっているのでしょうか?