2010-11-18 121 views
0

我有一些非常奇怪的事情發生在我的同事Visual Studio中。Visual Studio調試瘋狂!

我們完全被困住了,我只是把它扔在那裏,希望有人有一個好主意。

這是問題:

他有一些代碼運行在計時器上。在那個計時器中,他做了一個lock以確保一次只有一個「線程」可以進入。

他在lock中的一個點上放置一個斷點並運行到該點。

這是奇怪發生的地方。當他正在踏步時,流量會在一兩秒之後將他跳回到那個斷點。這很混亂。線程ID從不改變,所以它不是一個以某種方式越過lock的新線程。

但這裏真的很怪異的部分。它每次都會發生在他身上,但是當我下載源代碼並嘗試它時,它對我來說工作得很好。我可以遍歷所有的代碼,我從來沒有得到我的下一個陳述「跳來跳去」(缺乏更好的詞)。

他的機器和頭腦之間的唯一區別是,我安裝了Visual Studio 2010,但他沒有。 (但是,我們都在Visual Studio 2008 SP1中運行這個)

任何想法?任何呢?我真的很難過。

+0

相同數量的CPU核心等? – 2010-11-18 21:50:50

+1

你會介意發佈一些代碼嗎? – KBoek 2010-11-18 21:54:10

+0

你在鎖什麼?你可以使用'lock'語句發佈代碼,並顯示鎖對象是如何以及在哪裏實例化的? – 2010-11-18 22:06:12

回答

2

這使我想到的第一件事是此修復程序:

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

如果我從大約2年前沒記錯的話,安裝Silverlight的SDK也解決了該問題。我記得以爲這真的很奇怪,但它對我來說是個訣竅。 (我實際上發現該解決方案之前的修復程序)