Előtér- és háttérszálak

A felügyelt szálak háttérszálak vagy előtérszálak. A háttérszálak egyetlen kivétellel azonosak az előtérszálakkal: a háttérszálak nem futtatják a felügyelt végrehajtási környezetet. Miután az összes előtérszál le lett állítva egy felügyelt folyamatban (ahol a .exe fájl egy felügyelt szerelvény), a rendszer leállítja az összes háttérszálat, és leáll.

Feljegyzés

Ha a futtatókörnyezet leállítja a háttérszálat, mert a folyamat le van állítva, a rendszer nem bocsát ki kivételt a szálon. Ha azonban a szálak leállnak, mert a AppDomain.Unload metódus eltávolítja az alkalmazástartományt, ThreadAbortException a rendszer az előtérben és a háttérszálakban is megjelenik.

Thread.IsBackground A tulajdonság segítségével meghatározhatja, hogy egy szál háttér- vagy előtérszál-e, vagy módosíthatja annak állapotát. A szálak bármikor módosíthatók háttérszálra a tulajdonság truebeállításávalIsBackground.

Fontos

A szál előtér- vagy háttérállapota nem befolyásolja a szál nem kezelt kivételének kimenetelét. A kezeletlen kivétel az előtérben vagy a háttérszálakban az alkalmazás leállítását eredményezi. Lásd a felügyelt szálak kivételeit.

A felügyelt szálkészlethez tartozó szálak (vagyis azok a szálak, amelyek IsThreadPoolThread tulajdonsága true) háttérszálak. A felügyelt végrehajtási környezetbe nem felügyelt kódból beírt összes szál háttérszálként van megjelölve. Az új Thread objektumok létrehozásával és elindításával létrehozott szálak alapértelmezés szerint előtérszálak.

Ha egy szálat használ egy tevékenység (például szoftvercsatorna-kapcsolat) figyeléséhez, állítsa a tulajdonságát IsBackgroundtrue úgy, hogy a szál ne akadályozza meg a folyamat leállítását.

Lásd még