「VSCodeが固まって動かない…作業中のファイルが保存できない!」
コーディング中に突然VSCodeが応答しなくなる経験、ありますよね。画面がフリーズして、マウスもキーボードも受け付けない。最悪の場合、未保存の作業が失われてしまうことも…
でも安心してください。VSCodeの無応答問題には、必ず原因があり、そして解決方法があります。この記事では、応答しなくなったVSCodeを復旧させる方法から、そもそも問題を起こさないための予防策まで、徹底的に解説していきます。
作業を失わず、快適なコーディング環境を取り戻しましょう。
「応答なし」が起きる原因を理解しよう
VSCodeがフリーズする主な原因
応答しなくなる原因は、大きく分けて以下の6つです。
1. 拡張機能の不具合
VSCodeの機能を拡張するプラグインが原因で、動作が重くなったり停止することがあります。
- 互換性のない拡張機能
- バグのある拡張機能
- 拡張機能同士の競合
- 拡張機能の更新エラー
2. 重いファイルやプロジェクト
大きなファイルやプロジェクトを開くと、処理が追いつかなくなります。
- 巨大なログファイル(数百MB以上)
- 大量のファイルを含むフォルダ
- 深いディレクトリ構造
- 大きなgitリポジトリ
3. メモリ不足
パソコンのメモリ(RAM)が足りないと、VSCodeが正常に動作しません。
- 他のアプリケーションが大量のメモリを使用
- VSCode自体のメモリリーク
- ブラウザのタブを開きすぎている
- システム全体のメモリ不足
4. 無限ループやプロセスの暴走
実行中のコードやプロセスが暴走すると、VSCode全体が固まります。
- デバッグ中の無限ループ
- ファイル監視の無限再実行
- ビルドプロセスの暴走
- ターミナルでのプロセス実行
5. 設定ファイルの破損
VSCodeの設定ファイルが壊れていると、起動や動作に問題が生じます。
- settings.jsonの構文エラー
- ワークスペース設定の不整合
- 拡張機能の設定ファイル破損
6. システムリソースの競合
OSやウイルス対策ソフトが原因のこともあります。
- ウイルススキャンがファイルをロック
- OSのアップデート中
- ディスク容量不足
- CPU使用率100%
原因を特定できれば、適切な対処法が見えてきますよ。
応答なしの種類と見分け方
フリーズにも種類があり、それぞれ対処法が異なります。
完全フリーズ
- 画面が完全に固まる
- マウスカーソルも動かない
- タスクマネージャーも開けない
- システム全体の問題の可能性
VSCodeのみフリーズ
- VSCodeの画面だけ固まる
- 他のアプリは正常に動く
- タスクマネージャーは開ける
- VSCode固有の問題
一時的な反応低下
- 操作に数秒~数十秒かかる
- 最終的には応答する
- 「応答なし」と表示されるが回復する
- 処理待ちの可能性
繰り返し発生
- 特定の操作で毎回固まる
- 特定のファイルを開くと固まる
- 特定の拡張機能使用時に固まる
- 再現性のある問題
見分け方が分かれば、対処法も絞り込めます。
緊急対応:固まったVSCodeを復旧する
まず試すべき基本対処法
応答しなくなったら、まずはこれらを試してください。
ステップ1:少し待つ(30秒~1分)
実は処理中で、待てば復旧することもあります。
- 大きなファイルの保存中
- Gitの操作中
- 拡張機能の読み込み中
- インデックスの作成中
慌てて強制終了せず、まずは様子を見ましょう。
ステップ2:ESCキーを連打
処理をキャンセルできる場合があります。
ESCキーを数回押す
実行中のコマンドや検索がキャンセルされて、復旧することがありますよ。
ステップ3:Ctrl+Alt+Delete(Windows)
タスクマネージャーを開いて状況を確認します。
Ctrl + Alt + Delete
を押す- 「タスクマネージャー」を選択
- VSCodeのCPU・メモリ使用率を確認
CPU使用率が100%なら処理中、メモリ不足なら他のアプリを終了してみてください。
ステップ4:少し時間を置く
- 5~10分待ってみる
- コーヒーを淹れて気分転換
- 大きなファイルの場合は特に有効
意外とこれで復旧することも多いです。
タスクマネージャーでの対処(Windows)
VSCodeが完全に固まった場合の対処法です。
手順
Ctrl + Shift + Esc
を押してタスクマネージャーを起動- 「プロセス」タブで「Code.exe」を探す
- 複数のプロセスが表示される場合がある
- メモリ使用量の大きいものを確認
- CPU使用率を確認
- 100%なら処理中の可能性
- 0%なら完全にフリーズ
- プロセスを選択して「タスクの終了」をクリック
- 確認ダイアログで「プロセスの終了」
複数のCode.exeがある場合
VSCodeは複数のプロセスで動作します。
- メインプロセス(ウィンドウ管理)
- レンダラープロセス(画面表示)
- 拡張機能ホストプロセス
- ターミナルプロセス
メインプロセスを終了すると、すべて終了します。
タスクの終了ができない場合
コマンドプロンプトから強制終了:
Win + R
で「ファイル名を指定して実行」cmd
と入力してEnter- 以下のコマンドを実行:
taskkill /F /IM Code.exe
アクティビティモニタでの対処(Mac)
Macでのプロセス強制終了方法です。
手順
Command + Space
でSpotlight検索- 「アクティビティモニタ」と入力して起動
- 検索欄に「Code」と入力
- 「Code Helper」や「Electron」プロセスを確認
- CPU使用率とメモリを確認
- プロセスを選択して「×」ボタンをクリック
- 「強制終了」を選択
ターミナルから強制終了
killall "Visual Studio Code"
または
pkill -9 Code
システムモニターでの対処(Linux)
Linuxでのプロセス管理方法です。
GUI(System Monitor)
System Monitor
(システムモニター)を起動- 「プロセス」タブを開く
- 「code」で検索
- プロセスを右クリック → 「強制終了」
CUI(ターミナル)
プロセスIDを確認:
ps aux | grep code
プロセスを終了:
kill -9 [プロセスID]
または一括終了:
killall -9 code
原因別の詳細な解決方法
拡張機能が原因の場合
拡張機能の不具合は、最も多い原因の一つです。
セーフモードで起動
すべての拡張機能を無効化して起動します。
- VSCodeを完全に終了
- コマンドラインから起動:
# Windows
code --disable-extensions
# Mac/Linux
code --disable-extensions
または起動時に:
Ctrl + Shift + P → 「開発者: 拡張機能なしで再読み込み」
セーフモードで正常に動作すれば、拡張機能が原因です。
問題のある拡張機能を特定
- セーフモードで起動
- 拡張機能パネルを開く(
Ctrl + Shift + X
) - 一つずつ拡張機能を有効化
- VSCodeを再起動
- 問題が再発したら、最後に有効化した拡張機能が原因
よく問題を起こす拡張機能
以下の拡張機能は設定に注意が必要です:
- Language Server Protocol(LSP)系
- リンター(ESLint、Pylint等)
- フォーマッター(Prettier等)
- Git系拡張機能
- リモート開発系
これらが原因の場合、設定を見直すか、代替拡張機能を検討しましょう。
拡張機能のアンインストール
- 拡張機能パネルを開く
- 問題のある拡張機能を見つける
- 歯車アイコン → 「アンインストール」
- VSCodeを再起動
大きなファイルが原因の場合
巨大なファイルを開くと、VSCodeが固まることがあります。
ファイルサイズの制限設定
settings.jsonに以下を追加:
{
"files.maxMemoryForLargeFilesMB": 4096
}
デフォルトは4096MBですが、必要に応じて調整できます。
巨大ファイルの推奨対処法
方法1:ファイルを分割
# Linuxで大きなファイルを分割
split -l 10000 large_file.log split_file_
方法2:別のエディタを使用
- Vim(軽量エディタ)
- Sublime Text(大きなファイルに強い)
- less/moreコマンド(閲覧のみ)
方法3:ストリーム処理
# 最後の1000行だけ表示
tail -n 1000 large_file.log > temp.log
code temp.log
大きなフォルダを開いた場合
settings.jsonで監視対象を制限:
{
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/node_modules/**": true,
"**/dist/**": true,
"**/build/**": true,
"**/.venv/**": true
}
}
メモリ不足が原因の場合
システムのメモリが足りない場合の対処法です。
メモリ使用状況の確認
Windows
タスクマネージャー → 「パフォーマンス」タブ → メモリ
Mac
アクティビティモニタ → 「メモリ」タブ
Linux
free -h
メモリを解放する方法
1. 他のアプリケーションを終了
- ブラウザのタブを減らす
- 使っていないアプリを終了
- バックグラウンドアプリを確認
2. VSCodeのメモリ使用を最適化
settings.jsonに以下を追加:
{
"files.maxMemoryForLargeFilesMB": 2048,
"search.maxResults": 10000,
"search.followSymlinks": false,
"files.trimTrailingWhitespace": false,
"editor.codeLens": false
}
3. ウィンドウを分けずにタブで開く
複数ウィンドウではなく、1つのウィンドウで複数タブを使いましょう。
4. 定期的にVSCodeを再起動
長時間使用するとメモリリークが発生することがあります。1日1回は再起動するのがおすすめです。
無限ループが原因の場合
実行中のコードが暴走している場合の対処法です。
デバッグセッションの強制停止
- デバッグツールバーの「停止」ボタン(赤い四角)をクリック
- または
Shift + F5
ターミナルのプロセスを停止
VSCode内蔵ターミナルで実行中のプロセス:
Ctrl + C
複数回押すと強制終了できます。
タスクランナーの停止
- ターミナルパネルを開く
- 実行中のタスクを確認
- ゴミ箱アイコンをクリックして終了
自動保存が原因の場合
自動保存の度にビルドやリントが走って無限ループになることも。
settings.jsonで調整:
{
"files.autoSave": "off",
"editor.formatOnSave": false
}
一旦無効化して、問題が解決するか確認しましょう。
設定ファイルが原因の場合
破損した設定ファイルを修復する方法です。
設定ファイルの場所
Windows
%APPDATA%\Code\User\settings.json
Mac
~/Library/Application Support/Code/User/settings.json
Linux
~/.config/Code/User/settings.json
設定ファイルのバックアップと削除
- VSCodeを完全に終了
- 設定ファイルをバックアップ:
# Windows(PowerShell)
Copy-Item "$env:APPDATA\Code\User\settings.json" "$env:APPDATA\Code\User\settings.json.bak"
# Mac/Linux
cp ~/.config/Code/User/settings.json ~/.config/Code/User/settings.json.bak
- 設定ファイルを削除または空にする
- VSCodeを起動(デフォルト設定で起動)
- 問題が解決したら、必要な設定を一つずつ追加
構文エラーのチェック
settings.jsonをオンラインJSONバリデーターでチェック:
- https://jsonlint.com/
カンマの付け忘れや括弧の不一致が原因であることが多いですよ。
ワークスペース設定のリセット
プロジェクト固有の設定が原因の場合:
- プロジェクトフォルダ内の
.vscode
フォルダを確認 settings.json
を削除またはリネーム- VSCodeでフォルダを再度開く
予防策:応答なしを防ぐベストプラクティス
パフォーマンス設定の最適化
VSCodeを快適に使うための推奨設定です。
推奨settings.json
{
// ファイル監視の最適化
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/node_modules/**": true,
"**/dist/**": true,
"**/build/**": true,
"**/__pycache__/**": true,
"**/.venv/**": true
},
// 検索の最適化
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/*.code-search": true,
"**/dist": true,
"**/build": true
},
"search.maxResults": 10000,
"search.followSymlinks": false,
// エディターの最適化
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": false
},
"editor.suggestOnTriggerCharacters": true,
"editor.wordBasedSuggestions": false,
"editor.formatOnSave": false,
// 重い機能を無効化
"git.enabled": true,
"git.autorefresh": false,
"git.autofetch": false,
// ファイルサイズ制限
"files.maxMemoryForLargeFilesMB": 4096,
// 自動保存の調整
"files.autoSave": "onFocusChange",
// ミニマップ(重い場合は無効化)
"editor.minimap.enabled": false
}
拡張機能の管理
拡張機能を適切に管理することが重要です。
必要最小限に抑える
- 使っていない拡張機能はアンインストール
- 似た機能の拡張機能は1つに絞る
- 実験的な拡張機能は慎重に
拡張機能の定期的な見直し
月に1回程度、以下を確認しましょう:
- 拡張機能パネルを開く
- 「無効」タブを確認
- 使っていないものをアンインストール
- 更新があるものを更新
ワークスペースごとに拡張機能を推奨
プロジェクトごとに必要な拡張機能を管理:
.vscode/extensions.json
を作成:
{
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode"
]
}
拡張機能のログを確認
問題のある拡張機能を特定:
Ctrl + Shift + P
→ 「開発者: 拡張機能ホストを再起動」- 出力パネル → 「拡張機能ホスト」を選択
- エラーメッセージを確認
定期的なメンテナンス
VSCodeを健全に保つための習慣です。
1日1回の再起動
長時間起動していると、メモリリークや不具合が蓄積します。朝一番の作業開始時に再起動する習慣をつけましょう。
キャッシュのクリア
定期的にキャッシュをクリアすると、動作が軽くなります。
- VSCodeを完全に終了
- キャッシュフォルダを削除:
Windows
%APPDATA%\Code\Cache
%APPDATA%\Code\CachedData
Mac
~/Library/Application Support/Code/Cache
~/Library/Application Support/Code/CachedData
Linux
~/.config/Code/Cache
~/.config/Code/CachedData
- VSCodeを再起動
アップデートの適用
- VSCode本体の更新を定期的に適用
- 拡張機能も最新に保つ
- ただし、重要なプロジェクト作業中は避ける
バックアップの習慣
設定ファイルのバックアップを定期的に取りましょう:
# 設定をバックアップするスクリプト例
mkdir -p ~/vscode-backup
cp -r "$HOME/.config/Code/User" ~/vscode-backup/$(date +%Y%m%d)
システム全体の最適化
ウイルス対策ソフトの除外設定
ウイルススキャンがVSCodeの動作を遅くすることがあります。
除外すべきフォルダ
Windows Defender
- Windows セキュリティを開く
- ウイルスと脅威の防止 → 設定の管理
- 除外 → 除外の追加
- 以下のフォルダを追加:
C:\Users\[ユーザー名]\AppData\Local\Programs\Microsoft VS Code
C:\Users\[ユーザー名]\.vscode
[プロジェクトフォルダ]
他のウイルス対策ソフト
VSCodeの実行ファイルとワークスペースフォルダを除外設定に追加してください。
ディスク容量の確保
ディスク容量が不足すると、VSCodeが正常に動作しません。
空き容量の確認
- Windows: エクスプローラーで「PC」を開く
- Mac: ディスクユーティリティ
- Linux:
df -h
推奨空き容量
システムドライブに最低10GB以上の空きを確保しましょう。
不要ファイルの削除
- 古いログファイル
- node_modules(再インストール可能)
- ビルド成果物(dist、build等)
- 一時ファイル
システムリソースの確認
パソコン自体のスペックも重要です。
推奨スペック
- CPU: 2コア以上
- メモリ: 8GB以上(推奨16GB)
- ストレージ: SSD推奨
- OS: 最新版
リソース不足の兆候
- VSCodeだけでなく他のアプリも遅い
- ファイル保存に時間がかかる
- ディスクアクセスランプが常に点灯
- ファンが常に回っている
これらの症状があれば、ハードウェアのアップグレードを検討しましょう。
トラブルシューティングコマンド集
VSCode診断コマンド
問題を診断するための便利なコマンドです。
コマンドパレットから実行
Ctrl + Shift + P
で以下を実行:
プロセス エクスプローラーを開く
開発者: プロセス エクスプローラーを開く
VSCodeの各プロセスのCPU・メモリ使用率を確認できます。
拡張機能ホストを再起動
開発者: 拡張機能ホストを再起動
拡張機能だけを再起動します。
ウィンドウを再読み込み
開発者: ウィンドウの再読み込み
VSCode全体を再起動せずに、現在のウィンドウだけを再読み込みできます。
開発者ツールを開く
開発者: 開発者ツールを開く
ブラウザのような開発者ツールが開き、詳細なログやエラーを確認できますよ。
ログの確認方法
問題の原因を特定するためのログ確認方法です。
ログファイルの場所
Windows
%APPDATA%\Code\logs
Mac
~/Library/Application Support/Code/logs
Linux
~/.config/Code/logs
ログの表示
ヘルプ
→ログを開く
- 確認したいログの種類を選択:
- ウィンドウ
- 拡張機能ホスト
- 共有プロセス
- テレメトリ
エラーメッセージの確認
出力パネル(Ctrl + Shift + U
)で各種ログを確認:
- 拡張機能ホスト
- Git
- Tasks
- 各拡張機能のログ
クリーンインストールの方法
すべてリセットして再インストールする最終手段です。
手順
1. 設定のバックアップ
重要な設定をバックアップします:
- settings.json
- keybindings.json
- スニペット
- 拡張機能リスト
2. VSCodeのアンインストール
通常のアンインストール方法でVSCodeを削除します。
3. 設定フォルダの完全削除
Windows
%APPDATA%\Code
%USERPROFILE%\.vscode
Mac
~/Library/Application Support/Code
~/.vscode
Linux
~/.config/Code
~/.vscode
これらのフォルダを削除します。
4. VSCodeの再インストール
公式サイトから最新版をダウンロードしてインストールします。
5. 設定の復元
バックアップした設定を一つずつ戻していきます。
よくある質問(FAQ)
Q1:保存していないファイルは復旧できる?
A:
VSCodeには自動復旧機能があります。
VSCodeが異常終了した場合、次回起動時に未保存ファイルの復元が提案されます。
自動保存を有効にする
settings.jsonに追加:
{
"files.autoSave": "afterDelay",
"files.autoSaveDelay": 1000
}
1秒(1000ミリ秒)ごとに自動保存されるようになります。
Q2:特定のファイルを開くと必ず固まる
A:
ファイルが破損しているか、大きすぎる可能性があります。
対処法
- ファイルサイズを確認
- 別のエディタで開けるか確認
- ファイルの文字コードを確認
- バイナリファイルを誤ってテキストエディタで開いていないか確認
大きなファイルの場合、前述の分割や別エディタの使用を検討してください。
Q3:Gitの操作中に固まることが多い
A:
大きなリポジトリや大量のファイル変更が原因です。
対処法
settings.jsonで調整:
{
"git.enabled": true,
"git.autorefresh": false,
"git.autofetch": false,
"git.decorations.enabled": false
}
必要な時だけ手動でGit操作を実行しましょう。
Q4:リモート開発(SSH、WSL)で固まる
A:
ネットワークや接続の問題が考えられます。
対処法
- 接続が安定しているか確認
- サーバー側のリソースを確認
- タイムアウト設定を長くする:
{
"remote.SSH.connectTimeout": 60
}
Q5:Macで頻繁に「ビーチボール」が出る
A:
macOS特有の問題の可能性があります。
対処法
- macOSを最新に更新
- VSCodeを最新に更新
- Rosetta 2の問題(Apple Silicon Mac)
- Intel版とApple Silicon版を使い分ける
- セキュリティソフトの除外設定
Q6:拡張機能なしでも固まる
A:
VSCode本体かシステムの問題です。
対処法
- VSCodeを最新版に更新
- システムリソースを確認(メモリ、CPU、ディスク)
- クリーンインストールを実行
- 他のアプリケーションとの競合を確認
- GitHubのissueで同様の問題を検索
まとめ:快適なVSCode環境を維持しよう
VSCodeの「応答なし」問題は、必ず原因があり、解決できます。
この記事のポイント
- 応答なしの原因は拡張機能、大きなファイル、メモリ不足が主
- 固まったら、まずは少し待つ → ESC → タスクマネージャーの順で対処
- 拡張機能は必要最小限に抑える
- 設定を最適化してパフォーマンスを向上
- 定期的な再起動とメンテナンスが予防に効果的
問題発生時のチェックリスト
- ☐ 30秒~1分待った
- ☐ ESCキーを押した
- ☐ タスクマネージャーでプロセスを確認
- ☐ セーフモードで起動を試した
- ☐ 設定ファイルをチェックした
- ☐ ログを確認した
予防のチェックリスト
- ☐ 拡張機能を定期的に見直す
- ☐ パフォーマンス設定を最適化
- ☐ 1日1回VSCodeを再起動
- ☐ 自動保存を有効化
- ☐ システムリソースに余裕がある
- ☐ ディスク容量が十分にある
トラブル時の心構え
- 慌てずに一つずつ対処する
- 作業を失わないように自動保存を活用
- 定期的なコミットとプッシュで安全性を確保
- 完全に解決しない場合はクリーンインストール
さらなる学習リソース
- VSCode公式ドキュメント
- GitHubのissueトラッカー
- Stack Overflow
- VSCodeコミュニティフォーラム
あなたも今日から、快適なVSCode環境を手に入れましょう!
問題が起きても落ち着いて対処すれば、必ず解決できます。この記事をブックマークして、トラブル時の参考にしてくださいね。快適なコーディングライフを!
コメント