Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 9355|Respuesta: 5

[Fuente] [Combate real]. NET/C# establece un tiempo de espera para un método

[Copiar enlace]
Publicado en 4/5/2022 18:59:51 | | | |
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)





Anterior:[Combate real]. NET/C# llama a la descompresión 7z a través de la línea de comandos
Próximo:Nginx utiliza HTTPS para configurar certificados SSL
Publicado en 4/5/2022 23:10:31 |
Aprende a aprender...
Publicado en 10/10/2022 13:12:08 |
Aprende a aprender...
Publicado en 10/10/2022 13:12:50 |
Apréndelo
Publicado en 10/10/2022 13:13:27 |
Vamos a echar un vistazo a la solución del grandullón je je je
 Propietario| Publicado en 10/10/2022 17:22:12 |
API Task.WaitAsync() en .NET 6

En .NET 6, se ha añadido un nuevo método WaitAsync, que se utiliza para esperar de forma asíncrona a que se complete una tarea, y cuando se espera de forma asíncrona, se puede especificar un tiempo de espera o un token de cancelación llamado CancellationToken; en la versión anterior solo había una Espera síncrona que esperaba a que la tarea se completara, y no soportaba mejores tiempos de espera o cancelaciones de tareas Extensiones como TimeoutAfter pueden reemplazar estas extensiones por WaitAsync

https://andrewlock.net/a-deep-di ... nc-api-in-dotnet-6/
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com