海印网
海印网

挂起、恢复和终止线程

admin数码00

已弃用的方法: thread 类的 suspend()、resume() 和 stop() 在 java 2 中已弃用。

最终无效简历( )
最终无效暂停()
最终无效停止( )

引起的问题:
挂起():可能会导致死锁。
resume(): 没有 suspend() 就无法使用。
stop():导致线程执行严重失败。

现代替代方案: 在 run() 方法中使用控制变量(标志)来:
暂停: 标志设置为“暂停”会使线程暂停。
恢复: 标志设置为“运行”使线程继续。
终止: 标志设置为“终止”使线程终止。

挂起、恢复和终止线程-第1张图片-海印网

挂起、恢复和终止线程-第2张图片-海印网

挂起、恢复和终止线程-第3张图片-海印网

控制变量:
暂停:控制线程暂停。初始化为 false。
停止:控制线程终止。初始化为 false。

run() 方法:
包含一个同步块,用于检查挂起的变量。
如果挂起为 true,则调用 wait() 方法来挂起线程。

线程暂停:
要挂起,请调用 mysuspend() 方法,该方法将挂起设置为 true。

恢复线程:
要恢复,请调用 myresume() 方法,该方法将暂停设置为 false 并调用 notification()。

线程关闭:
最后,调用 mystop() 方法,将 stop 设置为 true。
mystop() 还将挂起设置为 false 并调用 notification() 以确保挂起的线程正确终止。

以上就是挂起、恢复和终止线程的详细内容,更多请关注其它相关文章!

Tags: 线程挂起

Sorry, comments are temporarily closed!