打开大文件后重启时 VS Code 崩溃

问题描述 投票:0回答:7

我最近使用 VS code 通过使用命令行标志

--max-memory=12288mb
从命令行打开来打开一个大文件。我能够很好地编辑文件并完成我需要做的事情,然后正常关闭代码。

默认情况下,我启用了

restoreWindows
hotExit
设置,这样当我重新打开代码时,所有以前的文件都会启用。

此后,每当我通过快捷方式或上下文菜单打开 VS Code 时,它都会尝试重新打开大文件,并在启动后约 10 秒内崩溃。并显示警告:

窗户坏了

给您带来的不便,我们深表歉意!您可以重新打开窗口以从上次中断的地方继续

enter image description here

我尝试了几个步骤来尝试关闭/阻止文件在运行的 10 秒内重新打开:

  1. 使用“x”图标关闭选项卡
  2. 使用文件菜单中的
    Close Editor
    Close Folder
    Close Window
    选项
  3. 设置
    "window.restoreWindows": "none"
    "files.hotExit": "off"
    以尝试阻止文件自动重新加载

我也尝试过在禁用扩展的情况下运行 VS Code

visual-studio-code vscode-debugger
7个回答
26
投票

解决方案是使用以下命令再次从命令行启动 VS Code

code --disable-extensions --max-memory=12288mb

然后关闭有问题的文件并正确退出 VS Code,而不打开任何文件。这样可以防止 VS Code 在重新启动时尝试重新打开大文件。

我相信这是 VS Code 中的一个错误,因为它感觉在重新加载文件时应该显示相同的警告,以使用正确的内存重新启动,就像第一次尝试打开文件时一样。我在这里向 MS 提出了一个错误。


10
投票

我在功率相对较低的 Mac 上也遇到了同样的问题。我错误地尝试使用 VS Code 打开 2+ GB 的 txt 文件。 VS Code 挂起,我最终强行关闭它。令我惊讶的是,当我尝试重新打开 VS Code 时,它立即尝试重新打开最后一个文件。没有布埃诺。同样,它会挂起并导致我使用的笔记本电脑几乎停止运行。我四处寻找解决方案,但没有成功,直到我看到上面 Fuempel 的回复——他使用的是 Windows 计算机,但这让我思考 Mac 上的等效备份结构是什么:

在 Mac 上:

  1. 打开 Finder 导航至

    ~/Library/Application Support/Code/Backups
    注意 - 您可能需要让 Finder 才能显示 隐藏文件和文件夹以查看路径及其内容 - a 快捷方式是按 CMD+SHIFT+。 打开/关闭此功能。

  2. 目录中应该有一个名为

    workspaces.json
    的文件,并且至少有一个具有明显随机整数名称的文件夹。就我而言,我有一个名为“1660046792691”的目录,并且我的workspaces.json包含以下内容:

    {"rootURIWorkspaces":[],"folderWorkspaceInfos":[],"emptyWorkspaceInfos":[{"backupFolder":"1660046792691"}]}
    

    注意,此“backupFolder”值指向同一目录中的文件夹。

  3. 我删除了workspaces.json 文件及其引用的文件夹(“1660046792691”)。

  4. 然后我就可以毫无问题地重新启动 vs code。 VS Code 将在重新启动时重新创建workspaces.json 文件和另一个工作区备份文件夹。


4
投票

对我来说,我必须删除

下的任何文件夹
%userprofile%\AppData\Roaming\Code\**Backups**

1
投票

为我工作..我打开了2gig文件..一次又一次地崩溃

rd /q/s "%userprofile%\AppData\Roaming\Code\"

1
投票

为我工作(在 Fedora 上):

rm -rf ~/Library/Application\ Support/Code/Cache/*
rm -rf ~/Library/Application\ Support/Code/CachedData/*

0
投票

vscode v1.75 中即将推出另一个可能的解决方案,以防止意外尝试打开大文件(现在位于 Insiders Build 中)。 您可以启用一项设置,在实际尝试打开文件之前强制弹出确认对话框。

large file confirmation dialog

另请参阅添加确认以在设置后面打开大文件

GH issue: testing large file confirmation dialog


-1
投票

VSCode 1.64(2021 年 12 月)在尝试重新打开大文件时可能不会崩溃。

该问题之后是 issue 132771issue 138805(“打开大型二进制文件读取完整内容”)

内部版本将包括 Benjamin Paserocommit e9eec21

文件 - 遇到二进制文件时取消读取

确保取消错误读取以尽快停止文件服务活动。
例如,当读取大型二进制文件时,我们希望立即取消读取。

© www.soinside.com 2019 - 2024. All rights reserved.