跳转到内容
彼岸论坛
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[问与答] Java 线程中如何实现休眠功能的线程安全


已推荐帖子

发表于

最近开始接手 Java 的项目,目前代码问题涉及到线程相关的内容,先说一下现状是
1 、线程是通过 new Thread().start 去启动的
2 、线程过一段时间就会假死
想咨询一下如何保证线程不假死,示例如下

public class thread1 implements Runnable {
	
    @Override
     public void run() {
     	while (true) {
        	try {
                if (condition) {
               	    // 代码
                    .......
                    
                    try {
                        Thread.sleep(300);
                    } catch (InterruptedException e) {
                        sout(e)
                    }
                } else {
                    try {
                        Thread.sleep(10000);
                    } catch (InterruptedException e) {
                        sout(e)
                    }
                }
            } catch (Exception e) {
            
            }
        }
    }

像这种一个线程逻辑里面,根据判断条件有多个休眠的,有什么好解决方案没,我查了一下 Timer 和 ScheduledExecutorService ,好像都不太符合,TimeUnit.时间单位.sleep 的底层好像也是 Thread.sleep 实现的,直接使用 ThreadPoolExecutor 去管理线程会不会有效,大家可以说说自己的看法

  • 游客注册

    游客注册

  • 会员

    没有会员可显示

  • 最新的状态更新

    没有最新的状态更新
  • 最近查看

    • 没有会员查看此页面.
×
×
  • 创建新的...