Pregunta

He escrito un servicio que se va a iniciar automáticamente. Se hace algunas cosas de inicialización en su método OnStart, incluyendo el establecimiento de SENS vigilantes para que se conecte.

¿Windows espera hasta que mi método OnStart se ha completado antes de permitir que los uers Para iniciar sesión, o es posible que tal un inicio de sesión podría suceder antes de mis observadores están configurados, si el usuario se mueve con suficiente rapidez?

Si esto último es cierto, ¿alguien puede recomendar una manera de garantizar que esto no suceda?

¿Fue útil?

Solución

Desafortunadamente su servicio se inicia en paralelo con otras actividades momento del arranque y no hay ninguna garantía de que OnStart () completará antes de que algún registro. Esto es especialmente cierto si OnStart () realiza una operación muy larga, pero no es una práctica preocupación si OnStart () finaliza rápidamente.

Tal vez usted puede estructurar su código para no hacer demasiado en OnStart (), y aún mejor, reaccionar de forma adecuada a ser iniciado después de que alguien ya ha iniciado la sesión?

Buena suerte!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top