In che ordine si verificano le chiamate di metodo in un servizio di Windows? Stiamo avendo un problema di temporizzazione e penso che sia dovuto al fatto che il costruttore impiega troppo tempo per completare l'elaborazione.Ordine di chiamate di metodi in un servizio di Windows
Si tratta di un problema analogo che penso stiamo avendo Error 1053 the service did not respond to the start or control request
Tuttavia, siamo meraviglia in quale ordine e quando i principali metodi, OnStart, InitializeComponent ecc vengono chiamati e/o quando dovrebbero essere chiamati.
Inoltre, il metodo OnStart sarebbe il posto migliore in cui inserire tutta l'elaborazione?
** Soluzione
fatto un po 'di tempo per fare un servizio di prova e testati le risposte qui sotto e scoperto il tempo fuori è venuta dalla lavorazione metodo Main così come il costruttore viene chiamato nel metodo Main inducendolo a tempo scaduto. Spostare tutto su OnStart oltre a girare un filo sembrava funzionare. Dettagli qui. http://www.adamthings.com/post/2012/06/28/error-1053-the-service-did-not-respond-to-the-start-or-control-request-in-a-timely-fashion/
OnStart dovrebbe avviare un altro thread che gestisca tutta l'elaborazione, in modo che il metodo possa tornare immediatamente. Nella mia esperienza questo funziona meglio. Non metterei nulla in InitializeComponent. – Mangist
OnStop deve interrompere la discussione e attendere che si completi :) – Mangist
È possibile trovare mettendo i punti di interruzione. – usr