如何使子线程一直运行,直到主线程结束?

tahn30625 2013-07-24 04:44:13
请各位高手帮忙,初学多线程,求指教!!!
C#语言:在主线程中用以下代码创建一个子线程,如何使这个子线程一直运行直到主线程结束?

Thread th = new Thread(new ThreadStart(DoWork));
th.IsBackground = true;
th.Start();
...全文
333 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qldsrx 2013-07-24
  • 打赏
  • 举报
回复
典型的“占着茅坑不拉屎”,你的子线程没事做了就该结束,一直运行浪费系统资源,毫无意义。
  • 打赏
  • 举报
回复
一般没必要那么做,子线程完成后就停止等待回收 把运行的参数和状态“驻留在主线程”中,需要的时候再重新开一个
yehuan911 2013-07-24
  • 打赏
  • 举报
回复
学习一下,好得很
请叫我卷福 2013-07-24
  • 打赏
  • 举报
回复
子线程执行任务完成后 就会结束了 如果你想让子线程不马上结束或者永远不结束(直到程序关闭) 那么你就自己写代码让它一直执行某个任务 如果子线程任务执行完毕了 为什么还要让它不结束呢?
jiezi316 2013-07-24
  • 打赏
  • 举报
回复
IsBackground = true; 即当前子线程为守护线程。主线程退出时,该子线程自己会退出
tahn30625 2013-07-24
  • 打赏
  • 举报
回复
SocketUpEx,能说再详细一点么?刚刚学多线程,多谢
罪人不釋之枷 2013-07-24
  • 打赏
  • 举报
回复
我是說在整個程序結束的時候,別忘了關閉線程 整個程序
SocketUpEx 2013-07-24
  • 打赏
  • 举报
回复
引用 2 楼 u010700121 的回复:
th.abort();
不要使用th.abort(); 使用变量
罪人不釋之枷 2013-07-24
  • 打赏
  • 举报
回复
LS+1 做一個循環,不過也不要忘了thread.sleep(間隔時間); 結束的時候別忘了關閉線程 th.abort();
SocketUpEx 2013-07-24
  • 打赏
  • 举报
回复
private void DoWork() { while(true) { } }

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧