我在多线程内部设置了判断机制,必须满足条件才可以启动,不能随便乱调用start()方法。

解决方案 »

  1.   

    public class BlockStart extends Thread{
       private boolean flag = false;
       public void run(){
          while(true){
             System.out.println("in thread");
          }
       }
       public void start(){
          if(!flag)
             return;
          else{
             super.start();
             flag = false;
          }         
       }
       public void setFlag(boolean flag){
          this.flag = flag;
       }   
    }大家看看我的:
      

  2.   

    给start()方法传递参数,对参数进行判断不行吗?
      

  3.   

    start(int flag);
    start方法不接受参数的。