Requisitos: Un método NET/C# necesita usar System.Diagnostics.Process para llamar a otras operaciones de programa, si es un programa de tercerosLa falta constante de respuesta puede llevar a métodos que siempre están esperandoComo un programa de terceros puede requerir que introduzcas un comando, el método no responderá por mucho tiempo que espere, lo que hace que el programa no pueda seguir ejecutándose normalmente.
Respecto a establecer un tiempo de espera para un método, deberías tener en cuenta algunos aspectos:
- El método ya está agotado, pero puede que siga aplicándose
- Si el tiempo de espera continúa, ¿llenará el hilo? ¿Memoria completa? ¿CPU completa?
- El método se agotó, cómo terminar la ejecución del método de forma elegante
Vi algo de código en Internet, como sobre el tiempo de espera de la tarea, aunque el efecto se logró, peroLa tarea seguirá siendo ejecutada, que puede consumir recursos constantemente, provocando que el programa se bloquee.
El código es el siguiente:
Revisando el tema, este artículo establece el tiempo de espera para el métodoDirigida y no adecuada para todos los métodos, solo para darte una idea, por favor modifícala según tu situación real.
Nuestro método llama a System.Diagnostics.Process para iniciar un programa de terceros, y una vez que el método expire, queremos eliminar el proceso que termina el programa de terceros. El código es el siguiente:
(Fin)
|