Требования: Метод NET/C# должен использовать System.Diagnostics.Process для вызова других операций программы, если это сторонняя программаПостоянное отсутствие ответа может привести к постоянным ожиданиям методовПоскольку сторонняя программа может требовать ввода команды, метод не отвечает, сколько бы времени ни ждал, в результате чего программа не сможет продолжить работу в обычном режиме.
Что касается установления тайм-аута для определённого метода, стоит учесть несколько моментов:
- Метод истёк, но его всё ещё можно применять
- Если тайм-аут продолжится, заполнит ли он тему? Полная память? Полный процессор?
- Метод истек, как достойно завершить выполнение метода
Я видел коды в интернете, например, про тайм-аут задачи, хотя эффект был достигнут, ноЗадача будет продолжаться, что может постоянно потреблять ресурсы, вызывая сбои программы.
Код таков:
Рассматривая тему, эта статья устанавливает тайм-аут для этого методаЦеленаправленно и не подходит для всех методов, чтобы дать представление, пожалуйста, измените его в соответствии с вашей реальной ситуацией.
Наш метод вызывает System.Diagnostics.Process для запуска сторонней программы, и когда метод истекает, мы хотим закрыть процесс, который завершает стороннюю программу! Код таков:
(Конец)
|