DoWork() で WinUSB ReadPipe() 呼び出しを保留する BackGroundWorker があります。ReadPipe() がデータを返すと、そのデータは DoWorkEventArgs パラメータにパッケージ化され、DoWork() は終了します。
通常、RunWorkerCompleted() は、DoWork() が終了した直後に実行されます。ただし、時々、2 つの間に 5 秒の遅延があります。DoWork() と RunWorkerCompleted() の開始時と終了時に DateTime.Now タイムスタンプを使用して、遅延が発生した場所を正確に特定しました。
DoWork() と RunWorkerCompleted() の間の遅延の原因は何ですか? 私に何かできることはありますか?