2009-03-27 9 views

答えて

1

チェスfrom great(http://research.microsoft.com/en-us/projects/chess/) ユニットテストの助けを借りて同時性バグを検出し、重要:チェスで再現可能です。

+0

これは素晴らしいツールですが、コードにデッドロックが発生する可能性があることを動的に伝えるものを探していました。たとえば、エスケープされたオブジェクトがある場合、警告が表示されます。 –

0

静的コード分析によってこのタイプのものを検出することは基本的には偽装のHalting Problemで一般的なケースでは決めることができません。このようなツールはほとんど存在しません。

存在する証明ツールに最も近いのは、計算を'Communicating Sequential Processes',としてモデル化し、正式な数学的推論を受けることができることです。しかし、これは任意の言語で任意のプログラムを実行し、そのプログラムの証明を計算するツールを作成することはできません。