java多线程相关问题
1.java是单线程多进程的。
一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的单一进程。线程可以被称为轻量级进程。线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。
2.java中run()方法启动线程与start()的区别。
4.sychronized关键字。同步函数使用的锁是this.函数都需要被对象调用,那么函数都有一个所属对象引用,就是this.
静态进内存时,内存中没有本类对象,但是一定有该类对应的自解码文件对象。类名.class 该对象的类型是class.
静态的同步方法:使用的锁是该方法所在类的字节码文件对象。类名.class。
懒汉式的多线程书写方法:
class single{
private static single s=null ;
private single(){ }
public static single getInstance() {
if (s==null){ Synchronized(single.class){
if(s==null) s=new single();}
}
}
}
5.线程同步