Sto guardando un codice legacy sotto forma di un servizio di Windows.Devo implementare il metodo Stop in un servizio Windows?
Ho notato che nel loro metodo OnStop(), scrivono semplicemente nel registro eventi, tuttavia non vi è alcun ripulitura dell'oggetto o controllo di terminare alcun thread. Ci sono 2 thread in background avviati all'avvio del servizio, quindi mi chiedo, questo servizio si ferma effettivamente? E se lo fa, i fili si chiudono correttamente?
Il metodo di arresto termina fisicamente il processo o è solo un arresto logico, che se non viene implementato non fa effettivamente nulla?
Ho appena testato (vedi il codice nella mia risposta), ha terminato il servizio senza problemi quando avevo un thread in esecuzione. L'unica volta in cui ho avuto problemi con l'arresto è se si eseguiva un'operazione in "OnStop" che richiedeva molto tempo per essere completata. –
Cosa è successo al tuo post scott? – jaffa
Ho verificato nuovamente il codice. Il servizio verrà arrestato ma il processo continuerà a essere in esecuzione. si prega di interrompere il servizio e controllare in Task Manager vedrete il processo esiste –