码迷,mamicode.com
首页 > 编程语言 > 详细

java.lang.IllegalThreadStateException

时间:2018-01-31 15:37:13      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:pre   override   main   java   exce   设置   star   重复   class   

这个问题的原因是:同一个Thread重复调用了start方法,如果你想开启多个线程,并且共享资源的时候,有两个方法
1.把共享资源设置为static
2.使用runnable

下面是一组上产上述错误原因的代码

public class Test1 {
    public static void main(String[] args) {
        Thread thread = new Demo();
        thread.start();
        thread.start();//这里删掉就不会报IllegalThreadStateException异常
    }
}

class Demo extends Thread{
    int x = 0;
    @Override
    public void run() {
        while(true){
            if(x>100){
                System.out.println(x++);
            }
        }
    }
}

java.lang.IllegalThreadStateException

标签:pre   override   main   java   exce   设置   star   重复   class   

原文地址:http://blog.51cto.com/13579086/2067261

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!