2010-11-18 18 views
0

私は同僚のVisual Studioで起こっているいくつかの本当に変なことをしています。Visual Studioデバッグ狂気!

私たちは完全に困惑しており、誰かが良いアイデアを持っていることを期待してこれを投げているだけです。

ここに問題があります:

彼はタイマーで動作するいくつかのコードを持っています。そのタイマーでは、lockを実行して、一度に1つの「スレッド」しか入ることができないようにします。

彼はlockの内側にブレークポイントを置き、そのポイントまで実行します。

これは奇妙なことが起こる場所です。彼が踏み込んでいるとき、流れは彼を2〜2秒後にそのブレークポイントに戻すでしょう。それは非常に混乱しています。スレッドIDは決して変更されないので、何とかlockを過ぎている新しいスレッドではありません。

しかし、ここには本当に奇妙な部分があります。それは毎回彼のために起こりますが、私がソースをダウンロードして試してみると、それはうまく動作します。私はすべてのコードを一歩進めることができ、私は次の声明を "飛び回る"ことはありません。

彼のマシンとマインドの唯一の違いは、Visual Studio 2010がインストールされていることです。 (ただし、両方ともVisual Studio 2008 SP1で実行しています)

アイデアはありますか?何か?私は本当に困惑しています。

+0

同じCPUコア数など? –

+1

コードを投稿してもよろしいですか? – KBoek

+0

あなたは何をロックしていますか?あなたは 'lock'ステートメントでコードを投稿し、ロックオブジェクトがどのようにそしてどこでインスタンス化されるかを表示できますか? –

答えて

2

私の心に来る最初の事は、この修正プログラムです:

http://support.microsoft.com/kb/957912

そして、私は約2年前から右覚えていれば、SilverlightのSDKをインストールも問題を修正しました。私はそれが本当に奇妙だと思ったことを覚えていますが、それは私のためのトリックでした。 (私は実際に修正プログラムの前にその解決策を見つけた)

関連する問題