バックグラウンド スレッドとして実行されている関数にブレーク ポイントを設定できません。バックグラウンド スレッドをデバッグできますか。
以下は実装です:
// Thread settings
SettingTestThread1();
BackgroundWorker testThread1 ;
private void SettingTestThread1()
{
testThread1 = new BackgroundWorker();
testThread1.DoWork += new DoWorkEventHandler(testThread1Handler);
testThread1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(testThread1CompletedHandler);
thread.Sleep(50) ; testThread1 .WorkerReportsProgress = true;
}
private void testThread1Handler(object sender, DoWorkEventArgs e)
{
//body of the testThread
func1();
func2();
func3();
}
private void testThread1CompletedHandler(object sensor, RunWorkerCompletedEventArgs e)
{
//Clean up , destruct-or calling, disposing off variable
}
main()
{
SettingTestThread1();
testThread1.RunWorkerAsync();
}
しかし、これを実行すると、ブレークポイントが func1、2、または 3 のボディのいずれかにヒットするのを確認できません。コードでも testThread1.RunWorkerAsync の前に、メインで SettingTestThread1() を呼び出しています。
Rgds、Rp