Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

165
Vistas
Escuche el evento de reinicio/apagado del sistema con C# - multiplataforma

Si solo estamos hablando de Windows, puedo usar Microsoft.Win32.SystemEvents.SessionEnding

¿Hay algo multiplataforma que pueda usar? Quiero algo que funcione con Windows y Linux. Usaré .NET 6.0

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Que yo sepa, no existe una forma directa y confiable de determinar esto en un entorno Linux, y mucho menos una solución multiplataforma. Deberá implementar una forma específica de Linux para detectar esto.

Como @fredrik mencionó en los comentarios, el uso de PosixSignal le permitiría saber que se le solicita que finalice su aplicación, pero no por qué. No obstante, puede examinar la situación al recibir un SIGTERM para determinar si el sistema realmente se está cerrando. Por ejemplo, ejecutar systemctl is-system-running devolvería "deteniendo" si ese es el caso.

Si asumimos un entorno de escritorio Linux moderno, una alternativa más robusta podría ser suscribirse a la señal D-bus PrepareForShutdown . De la documentación de systemd :

Las señales PrepareForShutdown() y PrepareForSleep() se emiten cuando se ha solicitado una suspensión o apagado del sistema y está a punto de ejecutarse, así como después de que se completó (o falló) la suspensión/apagado...

La biblioteca Tmds.Dbus proporciona una API asíncrona para escuchar esa señal en su aplicación .net. Aún deberá lidiar con el hecho de que recibirá esto Y SIGTERM en secuencia.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda