Как предотвратить визуализацию отладчика Visual Studio от истечения времени ожидания? - PullRequest
34 голосов
/ 24 апреля 2009

Я успешно создал несколько визуализаторов отладчика Visual Studio, и они работают очень хорошо, за исключением того, что на некоторых объектах появляется ошибка тайм-аута при попытке десериализации объекта с objectProvider.GetObject()

System.Exception: Function evaluation timed out.
  at Microsoft.VisualStudio.DebuggerVisualizers.DebugViewerShim.PrivateCallback.MaybeDeserializeAndThrowException(Byte[] data)

Тайм-аут происходит довольно быстро (возможно, примерно через секунду после того, как я нажимаю на значок визуализатора), даже если некоторые из моих других визуализаторов работают нормально даже с большими объектами данных, которые намного дольше отображаются (5-10 секунд) и до сих пор не перерыв.

Я уже создал собственный источник объектов, чтобы ограничить сериализацию полями, которые нужно отобразить. Что еще я могу сделать, чтобы данные были десериализованы без истечения времени ожидания?

Ответы [ 3 ]

41 голосов
/ 31 июля 2009
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Debugger

Я думаю, что это не задокументировано, но вы можете попробовать изменить некоторые тайм-ауты в приведенном выше разделе реестра и перезапустить Visual Studio.

5 голосов
/ 25 апреля 2013

Я недавно был поражен этим в VS2012, и после поиска в Google я нашел это :

Как говорится в сообщении об исключении, это исключение означает отладчик время для визуализатора данных истекло. В VS отладчике каждый окна оценки выражений (такие как окно наблюдения, окно местных жителей, datatips, окно autos и т. д.) имеет другое максимальное выражение по умолчанию тайм-аут оценки. Для всплывающей подсказки мы предпочитаем дать короткий значение тайм-аута, потому что в противном случае он предоставит плохого пользователя выражение. Если вы хотите использовать функциональность визуализатора для что вы можете добавить выражение в часы и попытаться визуализируйте это. (потому что окно просмотра имеет более длительное значение тайм-аута). если ты вы хотите избавиться от этого тайм-аута в datatip, вы можете попытаться увеличить значение времени ожидания для всплывающей подсказки. Значение тайм-аута является настройкой в Раздел реестра «DataTipTimeout» в разделе: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 10.0 \ Примечание отладчика: Вы должны проверить WOW64Node для 64-битной ОС. Вы также можете увидеть другие Значение тайм-аута Windows по умолчанию для этого ключа.

0 голосов
/ 31 марта 2015

Чтобы отладчик Visual Studio работал хорошо - окно «Locals» в «WPF visualizer» (протестировано в приложении WPF) необходимо найти в реестре: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 12,0 \ Debugger \ Параметр DWORD "LocalsTimeout" и значение по умолчанию (1000) установлены на достаточно большое значение, например, 5000.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...