Зависание UC при зависе запущенного из-под него приложения

Нашли баг? Воспользуйтесь поиском чтобы убедиться что его не нашли до вас и если он не упоминается добавьте его описание (желательно пошаговое).
Чем для автора программы отличаются баги, недоработки и фичи.

Модератор: motyara

Ответить
Diff
Сообщения: 109
Зарегистрирован: Вт янв 29, 2008 4:44 pm

Зависание UC при зависе запущенного из-под него приложения

Сообщение Diff »

Если в UC кликнуть файл, который система открывает каким-либо приложением и это приложение зависнет - UC зависнет тоже. Например, переименуйте большой архив или исошку в avi и откройте KMPlayer'ом. KMPlayer вероятнее всего зависнет и UC тоже перестанет отвечать до убития KMPlayer. Из-под других менеджеров такого не наблюдается.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Переименовал архив размером в 800 мегабайт в AVI и открыл указанным плеером... возможно версия плеера более свежая, но он просто сказал что кодек не найден. Затем откомпилировал программку, которая при запуске просто зацикливается и висит, установил ее в качестве мастер-программы для набранного случайными буквами расширения файла - при клике по этому файлу программа запустилась и зациклилась на старте, но на Unreal Commander это не никак не отразилось (Windows Vista). Если вдруг обнаружится гарантированный способ увидеть подвисание в такой ситуации, то буду рад его узнать. Если сам обнаружу, то исправлю проблему если смогу.
Diff
Сообщения: 109
Зарегистрирован: Вт янв 29, 2008 4:44 pm

Re: Зависание UC при зависе запущенного из-под него приложения

Сообщение Diff »

Да, я немного поторопился. Зависания имеют место быть, но похоже, в каких-то конкретных случаях. Виндовый проводник, кстати, ведет себя так же. А тотал и фрегат - нет. Получится нормально воспроизвести - отпишу.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

UC всегда висит до тех пор, пока не загрузится открывающая программа... Думаю, чтобы это воссоздать нужна программа, про которую в Диспетчере задач сразу будет написано "Не отвечает", а не та, которая уже запустилась и крутит вечный цикл... И есть подозрение, что современные компиляторы предотвращают такое поведение...
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Думаю, что для того, чтобы UC не дожидался завершения запуска программы, достаточно для открытия файла создавать новый поток.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Qwertiy писал(а):Думаю, что для того, чтобы UC не дожидался завершения запуска программы, достаточно для открытия файла создавать новый поток.
Как ни странно, но запуск производится именно через отдельный поток. Вероятно причина подвисания находится где-то в модуле запуска, которому наверное факт запущенности в отдельном потоке не сильно интересен.
Ответить