0

Threading.Timer イベントの発生時に directshow グラフを作成して開始する c# アプリがあります。しばらくして、別の Timer インスタンスが停止し、Marshal.ReleaseComObject(theGraph) を介してグラフを破棄しようとします。

これによりスレッド化の問題が発生し、Visual Studio は、com オブジェクト (この場合はグラフ) を、作成されたスレッドとは別のスレッドから破棄しようとすると、データが破損する危険性があると教えてくれます。

元のスレッドに戻ってグラフを停止して破棄するにはどうすればよいですか?

私はスレッド化についてほとんど知らず、この問題を無視してきましたが、スレッド化とそれを正しく使用する方法についてさらに学ぶ時間があります。

どんなポインタでも大歓迎です。

4

1 に答える 1

0

私はここで私の問題の解決策を見つけました:http://www.codeproject.com/Articles/12082/A-DelegateQueue-Class

于 2012-10-17T12:20:33.927 に答える