19 12
发新话题
打印

多线程的终止问题,线程的动态资源如何释放

多线程的终止问题,线程的动态资源如何释放

多线程的终止问题,线程的动态资源如何释放

terminateThread

如果让线程自己去结束,由于线程是阻塞式的,例如秒载文件ReadFileFromUrl.

TOP

有谁有好的实际项目经验?我是在处理多线程下载等情况下遇到的

有谁有好的实际项目经验?我是在处理多线程下载等情况下遇到的

发现终止任务的代码写的太难看,所以想知道有什么现成的方法

TOP

如果你的标题已在内容中,建议你将标题置空
美德是因为没有足够的诱惑。
简单的东西应该是简单的,复杂的东西应该是可能的。

TOP

线程等待一个事件,然后结束自己,不要Terminate
WaitForSingleXX, WaitForMultiXX

TOP

不是一般的同步,而是杀掉阻塞的线程,

不是一般的同步,而是杀掉阻塞的线程,

TOP

设定一个信号,线程中检测到后,停止工作并释放所有内容,完成后,设置另一个事件,主线程检测到此事件才退出。
走别人的路,让别人无路可走

TOP

引用:
原帖由 wsg1212 于 2008-1-18 15:17 发表
不是一般的同步,而是杀掉阻塞的线程,
不要“杀掉”阻塞的线程,这样(很黄)很暴力。要用同步对象(mutex,semaphore,event等)来协调线程的运行,
在恰当的时机线程会“自杀”的,不,这样说还是(很黄)很暴力,应该是线程会善终的。
Free as in free speech, not as in free beer.
www.nill.cn

TOP

引用:
原帖由 wsg1212 于 2008-1-18 14:36 发表
多线程的终止问题,线程的动态资源如何释放

terminateThread

如果让线程自己去结束,由于线程是阻塞式的,例如秒载文件ReadFileFromUrl.
既然都阻塞了,那还怎么让它自己响应呢?只有terminate了吧
不是我发的,谢谢。

TOP

阻塞函数,一般都有超时时间设置的方法,或者默认超时时间。除非它不合格。总不能永远阻塞下去吧?
你仔细看看是不是有默认超时时间,或者设置超时时间的方法,或者函数的返回值,是不是有代表超时的意思。如果不是小公司的作品,应该有这些。
就算要杀掉线程,也不至于就无法释放资源啊?说明你无法获得资源的引用。代码结构问题。不调整结构,你怎么搞都觉得不舒服。
恨号,恨呛大!!!

TOP

阻塞是有潮时,但是太长, 用户点STOP要等最长10秒种才停?

阻塞是有潮时,但是太长, 用户点STOP要等最长10秒种才停?

TOP

 19 12
发新话题