Я спробував надрукувати документ словом, і слово застигло. Чи є мені спосіб побачити, який ресурс його чекає?
Я використовую Windows XP та word 2007 (хоча, думаю, відповідь не залежить від процесу, який застиг)
Я спробував надрукувати документ словом, і слово застигло. Чи є мені спосіб побачити, який ресурс його чекає?
Я використовую Windows XP та word 2007 (хоча, думаю, відповідь не залежить від процесу, який застиг)
Відповіді:
Для цього потрібно небагато технічних знань, але можна проаналізувати висі за допомогою (безкоштовного) відладчика Windows WinDbg . Щоб встановити, приєднати до процесу та встановити символи, потрібно виконати певну роботу (дуже важливо!), Але тоді ви можете знайти причину зависання за допомогою однієї команди WinDbg (акцент моя):
проаналізувати -v -hang
Це той, якого я раніше не зустрічав. Виконайте це, відкривши дамп із вивішеного процесу, і він визначить, яка нитка відповідала за зависання і що його чекало. Я знав, що windbg може дозволити вам вивчити ручки, показати всі замки, відкриті в кожній нитці, і дозволити вам їх детально вивчити. Але я не усвідомлював, що за допомогою! Аналізувати, windbg може зробити важку роботу для мене - вивчивши замки, відкриті всіма потоками, визначивши, які потоки чекають, на які інші, та створити замовлення на розробку, яке спочатку відповідало за повісити.
Також вдосконалена налагодження Windows Маріо Хьюардта, Даніель Прават - це дуже хороша книга для початку роботи з WinDbg: Перші кілька глав дають дуже детальний огляд налагоджувачів і як конкретно використовувати WinDbg. Інша частина книги заповнена детальними налагодженнями прикладних досліджень, які вам не доведеться читати. Я думаю, що є тематичне дослідження, яке описує, як налагодити вішання, яке буде цікаво для вас.
Після того, як ви знайдете причину зависання, ви, можливо, зможете відкрутити її за допомогою більш досконалих методів налагодження ^^
Ви можете заглянути в Провідник процесів . Ви можете бачити, які процеси файлів / папок увімкнено блокування.
Наскільки я знаю, там немає. Ви можете підключити щось на кшталт Wireshark, щоб побачити, чи зможете ви знайти щось у мережевому трафіку, щоб вказати, що його чекає, але це зовсім небагато перенасичення і навряд чи ви знайдете що-небудь.
Перегляньте відеоролики провідника процесу " Випадок 200x", в якому автор показує діагностування декількох сценаріїв усунення несправностей, включаючи вішання. Тут також може бути допоможе діагностування примусового збою ctrl-scrolllock-scrolllock.