У меня есть настольное приложение WPF MVVM в NET 3.5. Это приложение имеет комбинированный список в главном окне. Этот comobobx связан со свойством модели представления. Когда приложение запускается впервые, этот комбинированный список заполняется. Когда элемент выбирается из выпадающего списка, в сетку данных wpf загружаются данные. Затем пользователь может выполнить некоторые операции над данными, загруженными в сетку данных. Чтобы выполнить определенную операцию, пользователь выбирает строку из таблицы данных и затем нажимает кнопку wpf, которая выполняет нужную операцию. Эта операция выполняется с фоновым рабочим, и когда она завершается, обновляется поле со списком. Он обновляется, поскольку каждый элемент в поле со списком имеет связанный счетчик, который необходимо пересчитать, а затем обновить в выпадающем списке после завершения операции.
Моя проблема заключается в следующем:
Как только операция завершается, если пользователь нажимает на выпадающий список, он останавливается и не отвечает в течение пары секунд, примерно 10 секунд, после чего секунд откликается. Это происходит только на компьютере в производственной среде. На остальных компьютерах такого не бывает. Я не могу воспроизвести это.
Так есть ли отладчик .NET, который я могу использовать для обнаружения взаимоблокировок, ненормального поведения потоков, блокировок и т. Д.?
Я пытаюсь использовать MDbg.exe, но из консоли приглашения MDbg, когда я пытаюсь подключиться к процессу (приложение работает), приложение зависает ...
В консоли приглашения MDbg для подключения к процессу я использую следующую команду:
a PID
Кроме того, из консоли приглашения MDbg я пытаюсь загрузить SOS.dll, используя приведенную ниже команду, но она говорит, что расширение не найдено:
load sos clr
Я не уверен, правильно ли я использую MDbg, я не использовал его раньше.