如何重复调用线程?

noaskme 2006-09-22 02:53:25
我定义一个线程,执行一个函数,在执行完之后,线程处于stopped状态,如何再次调用?下面我标记的地方怎么写?
private m_MyThreadDeleteSMS As New Thread(AddressOf InitSMS)

调用如下:
Select Case m_MyThreadDeleteSMS.ThreadState
Case ThreadState.Unstarted
m_MyThreadDeleteSMS.Start()
Case ThreadState.Stopped
这儿的代码如何写?
Case ThreadState.Running
End Select

刚开始学着使用线程,请指教
...全文
426 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
aafshzj 2006-09-22
  • 打赏
  • 举报
回复
如果你要反复使用一个线程,那就应该不释放该线程,而只是在线程完成当前任务处理之后,进入某种等待状态,直到特定的事件发生(有时候也可能设置等待超时时间)到达,线程再执行下一任务。


欢迎大家来我的博客作客:http://blog.csdn.net/aafshzj/
我正在写一系列关于AAF组件框架的文章。该框架能对开发工作提供很多帮助,并极大地提高开发效率。希望大家看一看并提出宝贵建议。

sanjie88 2006-09-22
  • 打赏
  • 举报
回复
你用完了一个自然要晴空,NEW了之后必须要释放的
noaskme 2006-09-22
  • 打赏
  • 举报
回复
每次都new,需要释放不?会不会到时候系统里多了好多已经结束的线程?这个占资源不?
arice1983 2006-09-22
  • 打赏
  • 举报
回复
再new一下,再start
noaskme 2006-09-22
  • 打赏
  • 举报
回复
但我用start再次启动的时候,系统提示:
System.Threading.ThreadStateException: 线程正在运行或被终止;它无法重新启动。
at System.Threading.Thread.StartInternal(IPrincipal principal, StackCrawlMark& stackMark)
阿牛138588 2006-09-22
  • 打赏
  • 举报
回复
把线程在通用区域声名一下
然后在要用的时候start一下就行了

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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