线程退出问题。好象很简单哦(100分)

binbin2000 2003-09-15 04:24:21
我在窗体中启动一个线程
Thread t = new Thread(new ThreadStart(DoString));
t.Start();
在DoString中写了如下代码:
while(!EndT)
{
//执行一见事情
}
然后在窗体的closing事件中把EndT变量设置为TRUE;
this.EndT = true;

按道理来说,关闭窗体的时候,DoString应该结束了,线程就该退出,但实际上,窗体关闭了。线程还在运行。郁闷。
...全文
25 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnhgj 2003-09-15
  • 打赏
  • 举报
回复
Abort
_weiKun_ 2003-09-15
  • 打赏
  • 举报
回复
sarcophile(食肉动物) 他的方法是在后台运行的方法。
ETstudio 2003-09-15
  • 打赏
  • 举报
回复
t.Abort()
了吗
binbin2000 2003-09-15
  • 打赏
  • 举报
回复
to sarcophile(食肉动物):谢谢,按你说的方法,问题已经解决,但是我不明白为什么。我用控制台运行两个线程,可以按照我想要的方式退出的。
PlayIrrrr 2003-09-15
  • 打赏
  • 举报
回复
在主线程中直接t.stop()行吗?
sarcophile 2003-09-15
  • 打赏
  • 举报
回复
try:
在主线程中加 t.IsBackground = true;,不用this.EndT=true;
ETstudio 2003-09-15
  • 打赏
  • 举报
回复
加了t.Abort()了没有

110,539

社区成员

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

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

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