J'ai un thread d'arrière-plan que j'utilise pour le traitement séparément de l'interface graphique, et tout fonctionne correctement entre les threads. Cependant quand je ferme l'application, le programme "se ferme" mais ne tue pas le processus. Le thread d'arrière-plan maintient le programme en vie, semble-t-il.C# isBackground Le thread ne se termine pas correctement
J'ai défini "myThreadInstance.IsBackground = true;", et je pensais que cela nécessiterait C# pour le tuer quand il est tué.
Je suis en train de tester tout cela dans Visual Studio (2010, en utilisant .NET 4.0), et après la première génération, tout le reste échoue parce que l'exe est toujours utilisé, donc il ne peut pas l'écraser. En regardant dans le gestionnaire de tâches, il est là. Tuer Visual Studio libère le processus vbhost qui libère mon exe. Tuer le processus de mon exe, fait réapparaître vbhost dans une seconde ou deux.
Utilisez-vous l'arrière-plan pour cela? – Kangkan
Gardez à l'esprit que les threads d'arrière-plan sont interrompus via 'Thread.Abort', ce qui peut être bloqué avec des droits suffisants. Je ne sais pas non plus avec quelle rapidité le thread s'interrompt si le code non géré est exécuté. Est-ce que l'un ou l'autre est possible? –