您所在的位置:主页 > 培训巧问答 >

如何在进程中重新开辟一个线程

时间:2014-07-09 14:41来源:未知 作者:疯狂java 点击:


  源代码:

  new Thread(){

  public void run() {

  try {

  // poundageConfigAction.uploadExchRateFileInfoFile(paramDto, fileSaveName+StatutConstance.SUFFIX);

  } catch (Exception e) {

  logger.error(" ",e);

  e.printStackTrace();

  }

  };

  }.start();

  说明:

  start()方法:启动一个线程,调用该Runnable对象的run()方法,不能多次启动一个线程;

  通过调用Thread类的start()方法来启动一个线程,这时此线程是处于就绪状态,并没有运行。

  然后通过此Thread类调用方法run()来完成其运行操作的,

  这里方法run()称为线程体,它包含了要执行的这个线程的内容,Run方法运行结束,此线程终止。

  run()方法:在本线程内调用该Runnable对象的run()方法,可以重复多次调用;

  源代码:

  try {

  Thread.sleep(800);

  } catch (InterruptedException e) {

  }

  sleep()方法:1、是一个静态方法,也就是说他只对当前对象有效,2、sleep方法没有释放锁3、sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

  wait()方法:wait方法释放了锁,使得其他线程可以使用同步控制块或者方法,wait属于Object的成员方法,一旦一个对象调用了wait方法,必须要采用notify()和notifyAll()方法唤醒该进程;如果线程拥有某个或某些对象的同步锁,那么在调用了wait()后,这个线程就会释放它持有的所有同步资源,而不限于这个被调用了wait()方法的对象。