0

オープン ソース ツールを使用してプログラムのデッドロックを検出するのを手伝ってくれる人はいますか?

4

1 に答える 1

3

コードなどを提供しなかったため、推測していることを思い出してください。ただし、Visual Studio では非常に簡単です。アプリケーションが実行中で、デッドロックに達したと仮定しましょう。これは通常、lock(...)操作を使用せずに共有変数の読み取り/書き込みで複数のスレッドがスタックしていることを意味します。

そのため、Visual Studio でデバッグを一時停止Threadsしてウィンドウに移動すると、各スレッドをダブルクリックして一時停止している行を確認できるはずです。これにより、少なくともどのエントリ ポイントがロックされているかがわかります。それがどのように発生したかを理解する必要があるため、それを修正することはまったく別の話になりますが、これにより、探している情報が得られるはずです.

lock(...)何らかのコンテキストでは、操作を介してロックを使用する必要がある可能性があります。

于 2012-10-10T11:35:48.273 に答える