Что это за ожидание фоновой операции в Visual Studio 2012?
Случайно, но довольно часто, без видимых причин, VS 2012 закроется диалогом, в котором говорится: "Ожидание завершения фоновой операции". Например. это может произойти во время простого редактирования старого кода, а не при явном вызове какой-либо команды IDE.
Что вызывает это, и я могу что-нибудь сделать с этим?
Я запускаю ReSharper 7, и я не единственный, кого знаю из-за этого.
Ответы
Ответ 1
У меня была такая же проблема, особенно на страницах cshtml. Я нашел эту страницу: https://devblogs.microsoft.com/aspnet/visual-studio-11-beta-razor-editor-issue-workaround, которая предлагает изменить параметр отступа в Инструменты> Параметры> Текстовый редактор> HTML> Вкладка на Смарт вместо Блока. В моем случае это было уже установлено на Smart, и изменение его обратно на Block решило проблему.
Обновление: я был неправ, это не исправило диалог, оно просто задержало его, пока я не скопировал или вставил. Что мне в итоге помогло, так это перейти в Инструменты> Параметры импорта и экспорта...> Сбросить все настройки.
Возможно связанный вопрос: Visual Studios 2010 - Asp.net MVC 4 Beta - длительные задержки при вставке и частые сбои
Ответ 2
Это очень общая диагностика. Он запускается COM, широко используется в Visual Studio для реализации расширяемости. Основной триггер - это интерфейс IMessageFilter. Триггер возникает, когда COM помещает вызов метода в другой поток и этот вызов не завершается в течение 60 секунд.
В фактическом уведомлении мало значения, оно говорит вам то, что вы уже знаете. К тому времени, когда прошло 60 секунд, вы, как правило, уже заметили, что все работает плохо. Короткие от небольшого количества полезных знаний о том, что Visual Studio на самом деле не полностью мертв. Однако вызов должен завершиться до того, как VS снова будет использоваться. Там мало что можно сделать, но нажмите ногу и подождите.
Эта проблема почти всегда вызвана надстройкой. Решаур, безусловно, хороший кандидат. Вы обнаружите создателя проблем, отключив надстройки один за другим, пока проблема не исчезнет. Это та проблема, которая встречается с новыми версиями Visual Studio, и разработчикам дополнительных устройств требуется некоторое время, чтобы устранить ошибки и зависания. Обратитесь к поставщику за поддержкой и в общих чертах посмотрите обновления, которые могут решить проблему.
Ответ 3
Удаление файлов решений "suo" для меня работало.
Ответ 4
У меня была такая же проблема, и в моем случае это был DevExpress.
Кажется, он висел в Visual Studio каждый раз, когда я делал операцию копирования или вырезания, вызывая сообщение:
"Ожидание завершения фоновой операции".
Оказывается, на самом деле он выполнял одну задачу в фоновом режиме, и на самом деле это заняло некоторое время (более 5 минут).
Возможно, если бы я ждал нормально, это могло бы исчезнуть, но наконец-то это было исправлено, чтобы показать панель инструментов (была скрыта/сработала), которая, в свою очередь, вывела окно, в котором говорилось:
", добавив [SomeDevExpressAssemblyNameHere].dll"
это постоянно обновлялось с именем каждой DLL, требуемой DevExpress, чтобы заполнить панель инструментов.
Таким образом, я мог видеть ход операции, и после его завершения я мог бы использовать скобу/вырезать пасту снова, как обычно.
Надеюсь, что это поможет.
Ответ 5
Для меня было исправлено обновление Web Essentials 2012 до версии 1.8.
Проблемная версия была 1.6
Ответ 6
Инструменты > Параметры > Текстовый редактоp > Настройки HTML > Вкладки → Идентификация → Нет решили эту проблему для меня.
Ответ 7
Это исправлено для меня:
Инструменты > Параметры > Текстовый редактоp > HTML > Разное
Снимите флажок "Элементы автоматического идентификатора при вставке в режиме" Источник "
Я опубликую обновление, если проблема вернется.
Ответ 8
У меня была эта проблема в течение нескольких дней, я попытался удалить и переустановить мою визуальную студию 2012 final edtion SP3...
Все еще не сработало.
Поэтому я удалил все свои расширения (git инструменты для VS 2012 и загрузчик пакетов Nuget),
перезапустил мой VS, и он снова понравился шарм!
Надеюсь, это сработает!
Удачи!
Ответ 9
http://geekswithblogs.net/sevenfortytwo/archive/2006/11/23/97947.aspx
RUN> iisreset
Теперь он отлично работает с VS 2012
Ответ 10
Я столкнулся с этой проблемой во время работы visual studio на виртуальной машине - Virtual Box 4.2, работающей на Mac OS X Mountain Lion, где была установлена новая версия Windows 7, в которой ничего не было установлено, кроме Visual Studio. Я обнаружил, что проблема была вызвана двумя отдельными проблемами.
Во-первых, мой проект был в папке, общей для ОС хоста. Другими словами, в гостевой системе Windows мой проект появился на сетевом диске. Поэтому открытие проекта в Visual Studio с сетевого диска, похоже, вызвало эту проблему, потому что проблема исчезла, когда я скопировал проект на диск C виртуальной машины Windows и открыл его в Visual Studio из копии на диске C.
Во-вторых, я снова начал испытывать проблему, когда жесткий диск на виртуальной машине заполнялся. У меня было около 1 ГБ свободного места на жестком диске. Когда я увеличил размер жесткого диска на виртуальной машине, этот вопрос исчез.
Ответ 11
Просто воспроизведенная аналогичная проблема с надстройкой Codemaid. Нашел этот разговор:
В этом выпуске много подробностей, но чтобы попытаться воспроизвести проблему заключается в том, что VS2012 С++ API представил проблему взаимоблокировки, когда API доступ из потока пользовательского интерфейса (например, WPF-контекст, такой как Spade). Это не было проблема в VS2010, и Microsoft исправила это для VS2013, но они не будут исправлять его для VS2012.
Кажется, что необходимо исправить (для Codemaid):
Пожалуйста, следите за этой нитью за текущее разрешение вопрос. Это связано с тем большим переписанием, поэтому я строил это путем добавления большого количества единичных тестов в первую очередь для обеспечения функциональности остается неизменным после изменений.
Ответ 12
Для меня это, казалось, было связано с синтаксисом бритвы, так как я только имел его в одном конкретном файле.
Например, если я поместил следующий код в одну строку, у меня была описанная проблема.
@section BodyClassName {note}
Но при установке закрывающей круглой скобки на следующей строке проблема исчезла.
@section BodyClassName {note
}
С уважением
Стейн
Ответ 13
Вдали от идеального решения, но, пожалуйста, попробуйте запустить визуальную студию в режиме администратора
я попробовал практически все, и это было единственное, что сработало для меня.
Ответ 14
Откройте Visual Studio, создайте новое приложение MVC, закройте новое приложение, откройте старое приложение и оно будет работать!
Ответ 15
Убедитесь, что IIS или другой процесс (возможно, BizTalk) блокирует ваши DLL/ссылки
Убить/остановить IIS или другой процесс, если он
Ответ 16
Я думаю, что нашел ключ! Все заканчивается dcomcnfg.exe!
Откройте его и перейдите по следующему пути:
Службы компонентов > компьютеры > мой компьютеp > dcom config
после нажатия на dcom вы увидите, что многие предупреждения зависят от количества компонентов на вашем ПК.
Нажмите "Да" в каждом окне сообщения, чтобы добавить правильную запись для dcom.
Ответ 17
Я обнаружил, что VS также загружает пакеты во время "фоновой операции". Вы можете удалить ненужные расширения, чтобы ускорить работу.
Ответ 18
У меня это исправлено несколько недель назад после того, как я выключил TeamViewer 8 Clipboard Sync! теперь он появляется без причины, поэтому я попробовал reset все настройки, и это сработало для меня.
Ответ 19
У меня была такая же проблема, и я запускал VS как администратор, похоже, помогло (я опубликовал аналогичный вопрос в Visual Studio 2012 Express Hangs with Message " "Ожидание фоновой операции для завершения" в команде "Формат документа" , которая была помечена как дубликат для этого, поэтому я решил, что я также поделился бы здесь).
Ответ 20
Для меня это был демон Resharper, открывающий диалоговое окно, которое не отображалось. Я нашел значок диалога в меню скрытых значков на панели задач. Когда я избавился от диалога, Visual Studio немедленно вернулась к нормальной работе.