powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
8 сообщений из 8, страница 1 из 1
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955307
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Некий метод может выполняться нормально, а может подвисать (редко).
Вот когда он зависает и не отвечает в течении скажем 20 секунд, нужно выйти из метода, где он используется.
Как это делается?
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955327
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уточню. Метод, где он используется - это родительский метод. Именно из него мы вызываем потенциально опасный метод, который может иногда подвисать (его люди пилят-пилят и никак допилить не могут). Так вот, надо из родительского метода выйти.

Какие проблемы? Зависший метод, если его брать в поток, на Abort() не реагирует. Висит и ждет у моря погоды.
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955345
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlsaf,

Abort() не завершает поток, а сигнализируем ему о том, что пора бы прерваться и идти пить чай.
поток можно отстрелить принудительно как процесс, но
a) это не безопасно, равносильно отключению электричества для процесса
б) Task это не поток. он выполняется в пули потоков, а значит в потоке в котором он выполняется может выполняться другой таск или что то еще. Найти поток таска реально и отстрелить его реально, но делать так ошибка, так как последствия будут непредсказуемые.

лучше разберитесь в причинах зависания, скорее всего в методе который вы вызываете есть подключение к внешнему ресурсу, который подвисает, а таймаут не указан.
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955347
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlsaf,
Ну и какие неудобства это вам доставляет? застегните его в делегат и запускайте по выходу исполняйте финальные операции..
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955348
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,

о каком выходе можно говорить, если метод зависает? :)
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955361
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesб) Task это не поток. он выполняется в пули потоковПро Task речи нет. Речь идет о Thread. Его можно отстрелить?
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955583
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlsaf, снимите дама с процесса, посмотрите в чем проблема. Отправьте разработчикам, пусть поправят, ну или дадут рекомендации, как обойти.
...
Рейтинг: 0 / 0
Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
    #38955626
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрите в код, что там и как у них сделано, может прояснится
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Метод из сторонней сборки иногда зависает при выполнении. Как бороться?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]