如何增加允许Visual Studio无响应的时间?

时间:2018-02-11 17:25:17

标签: c# visual-studio visual-studio-2017

我正在尝试使用Microsoft的Dynamics 365 for Finance和Operations解决方案,通过OData开发C#应用程序。这使用了Microsoft的OData V4 Client Generator扩展(V2.4.0)生成的大型(900,000多行)文件。

每当我在调试时不小心插入此文件中的代码,或者尝试查看其中的定义(无论应用程序是否正在运行),或者只是打开文件,Visual Studio 2017(当前版本为15.5.6) )会变得反应迟钝,并在几秒钟后重新启动。

Visual Studio 2015曾经开始让各种面板在刷新失败之前不会刷新并闪烁为完整的空白。 Visual Studio 2017刚刚锁定。

我想知道重启之前的超时是否会增加,所以它必须完成它正在做的任何事情,假设它会恢复。

如果有人有另一种方法来处理巨大的自动生成文件,我愿意尝试它们。显然,花费数小时手动分解文件不是一个选项,我尝试使用部分类将文件拆分成多个文件根本不会编译(我记得,错误是它用尽了字符串空间 - 大概是VS无法维护其内部结构中超过两千个部分类的所有跨文件信息。)

2 个答案:

答案 0 :(得分:1)

您可以尝试在打开时立即关闭大文件窗口,以防止Visual Studio处理它。例如,在IVsRunningDocTableEvents.OnBeforeDocumentWindowShow处理程序中:

public int OnBeforeDocumentWindowShow(uint docCookie, int fFirstShow, Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame pFrame)
{
    try
    {
        if (GetDocumentName(docCookie).EndsWith(fileToBlock, System.StringComparison.CurrentCultureIgnoreCase))
            pFrame.CloseFrame((int)Microsoft.VisualStudio.Shell.Interop.__FRAMECLOSE.FRAMECLOSE_NoSave);
    }
    catch (System.Exception e)
    {
    }
    return Microsoft.VisualStudio.VSConstants.S_OK;
}

请参阅Block certain file from opening in a document tab Visual Commander的示例扩展名。

答案 1 :(得分:0)

在MSDN上搜索论坛时,我能够找到大量与您报告的问题相同的人。 VS开发团队表示,他们已于2017年8月修复了这些问题。

您可以尝试更新Visual Studio并使用修复程序获取发行版,或尝试禁用诊断工具和已用时间PerfTip:

enter image description here

如果您的项目与VS 2015兼容,如果您仍有工作许可证,我建议您回复它。

来源:

Slow IDE when Diagnostics Tools is turned on

Slow IDE when CodeLens is turned on

Slow IDE when fusion logging is turned on