отладка зависающего приложения VS

392
24 декабря 2016, 14:59

В Unity зависает редактор. Если сбилдить программу(под вин), то она тоже зависает(no responding). Не могу найти причину: выполняю неопределенное количество раз одно и тоже действие и потом зависание. Поставить breakpoint не могу потому, что не ясно где их ставить. Мне кажется, что зависает где-то в скриптах юнити.

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

Спасибо!

Answer 1

Есть минимум три решения. Два быстрых и одно долгое. Причем долгое связанно именно с Visual Studio (почему у Microsoft не может быть всё просто?)

1. Наибыстрейшее (на материально затратное).

Идем в Unity assetstore и ищем ассет Panic Button. Он находится в разделе Editor Extensions/System. На данный момент конкретная ссылка здесь.

Что она делает? Когда приложение крутится в бесконечном цикле и интерфейс Unity висит, достаточно нажать клавиши Shift + Esc и происходит "обрыв" главного потока, интерфейс отвисает. При этом проигрывание ставится на паузу, а в консоли отображается проблемное место:

Как конкретно она работает? Что внутри? Скорее всего то, что будет описано в пункте №3, только сделанное в виде скрипта, упакованного в dll (чтоб никто не видел код

READ ALSO
ASP.NET MVC Core: Dependancy Injection не в контроллере

ASP.NET MVC Core: Dependancy Injection не в контроллере

А как я могу передать сервисы из Dependancy Injection которые зарегестрированы в startupcs в приложении ASP

364
Освобождение памяти в Stack'e

Освобождение памяти в Stack'e

Всем известно,что с Stack это некий участок памяти,который аллоцируется на каждый поток в виде размера 1МБ , в нем хранятся ссылки(ObjRef) на ReferenceType,пользовательские...

344
Не дописывает в файл все значения

Не дописывает в файл все значения

Данный код выполняет запись в файл (выполняется в Windows 10):

365
Работа с Word посредством C#

Работа с Word посредством C#

Здравствуйте! Возможно ли как-то после какой-то N строки, сделать так сказать скриншот следующих строк и вывести их потом отдельно в виде картинки(или...

819