Comments 13
Extension Bisect
Штатный инструмент VSCode для поиска "плохого" расширения
В смысле "штатный"? Это сторонний плагин из маркетплейса, такой же точно как и ваш Rails.
Для определения времени выполнения дочерних процессов плагин вообще не нужен, есть системные инструменты (в Linux по крайней мере), которым всё равно, кто создаёт дочерний процесс, - VScode или обычный шелл:
#!/bin/zsh
# Simulate a slow subprocess
echo Parent started
sleep 1
(echo Child started; sleep 5; echo Child finished)
echo Parent finished
$ strace -tt -e trace=clone,kill ./test.sh
Parent started
18:19:00.468526 clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f82457765d0) = 179376
18:19:01.470227 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=179376, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
18:19:01.471179 kill(-179376, 0) = -1 ESRCH (No such process)
18:19:01.472054 clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f82457765d0) = 179377
Child started
Child finished
18:19:06.475428 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=179377, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
18:19:06.476107 kill(-179377, 0) = -1 ESRCH (No such process)
Parent finished
В смысле "штатный"? Это сторонний плагин из маркетплейса, такой же точно как и ваш Rails.
Можете ссылку дать? А то есть ощущение, что вы врёте. У меня функционал есть из коробки, просто не в меню, а в паллете
Да, такое расширение действительно есть. Ссылка
Но в моем случае работает немного по-другому: вместо поиска в меню Help -> Start Extension Bisect я открывал Палитру команд (F1 или Ctrl + Shift + P) и вводил "Start Extension Bisect". Работает так, как заявлено: отрубает расширения (но в моем случае отрубило все)
Будет еще предупреждающее окно:

Если нажать Start Extension Bisect, VS Code перезапустится и в правом нижнем углу появится следующее (это окно закрывать не стоит, иначе придется перезапустить VS Code):

В моем случае отрубились все расширения (в том числе и сам Extension Bisect):

Чтобы заново запустить все расширения, нужно нажать Stop Bisect (окошко на картинке выше).
Дальше нужно нажимать "I can't reproduce", чтобы постепенно включать расширения. Если вы нашли пробему, нужно нажать "I can reproduce" (хотя разницы между последними 2 кнопками я не нашел)
Это разширение работает только на 1 окно VS Code. Остальные останутся целы.
Вы бы хоть прочитали что ли описание расширения. Давайте помогу:
"This extension is annoying and only serves as a sample to try out the extension bisect feature." = "Это расширение раздражает и нужно только как пример для использования функции extension bisect"
Перевожу на человеческий - функционал extension bisect встроен в VSCode, а приведённый вами экстеншен нужен только лишь для того, чтобы этот функционал наглядно показать/оттестить. Сам функционал является базовым
Да, описание я читал и переводил. Еще обращал внимание на то, что последняя версия расширения вышла очень давно, так что толку от него нет.
Инструкцию я написал для тех, кто всё-таки пошел это расширение скачивать (хотя смысла от этого ноль).
функционал extension bisect встроен в VSCode
Я сначала этот функционал искал, опираясь на статью, но не нашел его. Потом нашел в меню раздела Extensions.
Я согласен, что подобное расширение бесполезно, но встроенный функционал работает так же, как и расширение. Для самого подобное расширение было в новинку, и работал с ним только ради забавы. Спасибо, что написали про нюанс с описанием.
эм у майков все работает с божьей помощью у меня Win10 то и дело зависает проводник пару раз крашился + права администратора прям видно что винда зависает на какое-то время при чем на достаточно долгое время + в компиляторах MSVC начиная с v120 VS2013 (хотя выще я утверждать не буду я не тестировал) есть ооочень серьезные проблемы я нашёл толи есть какие-то проблемы с move semantics то ли ещё с чем-то как пример в компиляторах msvc есть дубли заголовков которые лежат CRT/src а есть в дефолтном которые ты обычно подключаешь так вот они сильно различаться частая проблема старого кода который застал еще Visual SourceSafe так вот суть такова есть определенный код который работает в VC71 VC80 VC90 VC100 но не работает в VC120 компилятор то выбивает ошибку то крашится то иногда собирает прога не работает при том что это тоже самое работает без изменений в компиляторах GCC
Круто. И характер. Я бы, 100%, даже не запуская top, первым делом отключил половину расширений, потом вторую половину. Типа вайб-кодинг, только без вайб кодинга...
Пишу код в блокноте и у меня ничего не зависает.
Расширения стоит выбирать осознанно, а не «потому что кто-то посоветовал».
Я больше скажу: устанавливайте только те программы, которыми пользуетесь.
А кто-то сталкивался с полным зависанием при глобальном поиске по всему проекту?
История о том, как я расследовала проблему зависаний VSCode и нашла причину