当我尝试在 TFS 或使用 TFS 的项目中执行大多数操作时,例如将文件添加到项目中,主界面会冻结。
我查看了调用堆栈,在检查项目是否处于活动状态时,它似乎处于死锁状态。
我曾尝试下载一份全新的代码副本,但这并没有帮助。
我正在使用安装了 SP1 的 VS2010。
这是刷新我的挂起更改后冻结时主线程的调用堆栈的顶部
ntdll.dll!_ZwWaitForSingleObject@12() + 0x15 bytes
ntdll.dll!_ZwWaitForSingleObject@12() + 0x15 bytes
Tfsprovider.dll!NVseeFC::CCriticalSection::Lock() + 0x1d bytes
Tfsprovider.dll!CSccManager::fIsSolutionFolderProject() + 0x3b bytes
Tfsprovider.dll!CSccManager::IsActive() + 0x153 bytes
Tfsprovider.dll!CVsSccUI::Exec_icmdSccRefreshStatus() + 0xbd bytes
Tfsprovider.dll!CVsCommandTargetMap<CVsSccUI,IOleCommandTarget>::Exec() + 0x6a bytes
Tfsprovider.dll!CVsCommandTarget<NVseePkgsVssProvider::CGridBarDialog,IxNull>::Exec() + 0x26 bytes
Tfsprovider.dll!CVsSccPackage::Exec() + 0xa9 bytes
Tfsprovider.dll!CVsSccHatHelper::RefreshStatus() + 0x3c bytes
[Managed to Native Transition]
Microsoft.VisualStudio.TeamFoundation.VersionControl.dll!Microsoft.VisualStudio.TeamFoundation.VersionControl.VssProvider.RefreshStatus() + 0x35 bytes
Microsoft.VisualStudio.TeamFoundation.VersionControl.dll!Microsoft.VisualStudio.TeamFoundation.VersionControl.ToolWindowPendingCheckinsForm.Microsoft.TeamFoundation.VersionControl.Controls.IPendingCheckinHost.RefreshPendingCheckins() + 0x69 bytes
Microsoft.TeamFoundation.VersionControl.Controls.dll!Microsoft.TeamFoundation.VersionControl.Controls.PendingCheckinsChannelControl.OnRefreshPendingCheckins() + 0x3d bytes
Microsoft.TeamFoundation.VersionControl.Controls.dll!Microsoft.TeamFoundation.VersionControl.Controls.PendingCheckinsChannelControl.RefreshSelectedChannel() + 0x22 bytes
Microsoft.VisualStudio.TeamFoundation.VersionControl.dll!Microsoft.VisualStudio.TeamFoundation.VersionControl.CommandHandlerPendingCheckins.Refresh_Exec(Microsoft.VisualStudio.TeamFoundation.CommandHandler handler, Microsoft.VisualStudio.TeamFoundation.CommandHandler.Command command, int commandId) + 0x13 bytes
(Other calls removed, they don't look relevant)
有没有其他人遇到过这个问题,或者知道解决方法?
更新:界面在等待大约 8 分钟后恢复生机。在此期间,TFS 服务器通过网络向我发送了大约 60,000 个数据包。
更新 2:我通过手动重新创建 SLN 文件解决了这个问题。