线程Start()后还需不需要去Abort()?

jueban9818 2006-01-20 02:23:32
如果需要,在什么条件下才执行Abort()?

另外一个问题:为了什么开10个线程并发速度还可以,开了300个线程并发,感觉很慢,是不是被锁了?怎么解决这个问题?
...全文
268 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
nameone 2006-03-04
  • 打赏
  • 举报
回复
UP
petit 2006-03-04
  • 打赏
  • 举报
回复
无论是那种语言,都尽量不要显式的使用abort。最好的模式是:
在把线程体放在while(flag){...}中,当要中止这个线程时,把flag设为false就好了,线程会自然退出
ybzsu 2006-01-20
  • 打赏
  • 举报
回复
Abort()就是强行引发异常终止线程(不想让他运行了就用)
线程多了肯定慢
比如你操作系统中有10个线程那么过10个时间片他就会轮流执行一次,如果100个那么只能过100个时间片才能轮流一次,每个线程占用CPU的时间才是前面的1/10
SkyeyGarden 2006-01-20
  • 打赏
  • 举报
回复
学习
godson_h 2006-01-20
  • 打赏
  • 举报
回复
一般来说,不需要使用Abort().
lidong6 2006-01-20
  • 打赏
  • 举报
回复
线程运行完后会自己终止,但如果你要强制终止的话就得用到abort了
lovebanyi 2006-01-20
  • 打赏
  • 举报
回复
开300个线程...会占了好多管理线程的CPU时间
jxufewbt 2006-01-20
  • 打赏
  • 举报
回复
同意楼上
ChengKing 2006-01-20
  • 打赏
  • 举报
回复
线程运行完成可以终止.

当需要强迫它终止时或线程遇到故障死锁等情况时,要用Abort()和Join()方法终止它们.
参考:
(七)线程--管理线程(使线程中止,暂停,挂起等)(示例下载)
http://blog.csdn.net/chengking/archive/2005/11/30/540646.aspx

更多线程知识点:
http://blog.csdn.net/ChengKing/category/160892.aspx
jueban9818 2006-01-20
  • 打赏
  • 举报
回复

还会有

其他信息: 线程正被中止。
线程 '<无名称>' (0x19e4) 已退出,返回值为 0 (0x0)。
未处理的“System.Threading.ThreadAbortException”类型的异常出现在 未知模块 中。
jueban9818 2006-01-20
  • 打赏
  • 举报
回复
经常会有


未处理的“System.AppDomainUnloadedException”类型的异常出现在 未知模块 中。

其他信息: 试图访问已卸载的 Appdomain。



这个是什么问题哦,怎么解决?

62,075

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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