源代码:
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()方法的对象。