都是多线程惹得祸,c# 的窗体为什么在关闭之后,进程还有?

您所在的位置:网站首页 思华软件为什么关闭了 都是多线程惹得祸,c# 的窗体为什么在关闭之后,进程还有?

都是多线程惹得祸,c# 的窗体为什么在关闭之后,进程还有?

2024-07-14 00:34| 来源: 网络整理| 查看: 265

我的C#,在程序中用到了socket和多线程 ,结果关闭程序后,任务管理器中仍然有进程,其主要原因是线程没有结束。

C#中,Thread类有一个IsBackground 的属性.,后台线程不会防止应用程序的进程被终止掉。

整个程序关闭,但是当前台线程还没结束的时候,程序是不会被从任务管理器中去掉的。所以把启动的线程 都加入IsBackground就可以点关闭时完全退出了。

threadxxxx.IsBackground = true;

附带关闭程序的代码         private void onClose(object sender, FormClosedEventArgs e)         {                _shouldStop = true;             if (tcpServer == null)                 return;

            if (!tcpServer.Connected)                 return;

           

            try             {                  tcpServer.Close();               threadListening.Abort();             threadBroadCast.Abort();             }             catch             {             }                    }         private void onCloseing(object sender, FormClosingEventArgs e)         {

            if (MessageBox.Show("真的要退出程序吗?", "退出程序", MessageBoxButtons.OKCancel) == DialogResult.Cancel)             {                 e.Cancel = true;             }             else             {

                _shouldStop = true;                 if (tcpServer == null)                     return;

                if (!tcpServer.Connected)                     return;

                try                 {                     tcpServer.Close();                     threadListening.Abort();                     threadBroadCast.Abort();                 }                 catch                 {                 }                 Thread.Sleep(100);

                Application.Exit();             }

        }     } ———————————————— 版权声明:本文为CSDN博主「babytiger」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/babytiger/article/details/84589916

https://blog.csdn.net/babytiger/article/details/84589916?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3