public class java_thread extends Thread{
public static void main(String args[])
{
(new java_thread()).run();
System.out.println("main thread run ");
}
public synchronized void run()
{
System.out.println("sub thread run ");
}
}
B 是对的
C volatile不需要加锁,比synchronized更轻量级,不会阻塞线程 从内存可见性角度讲,volatile读相当于加锁,volatile写相当于解锁 synchronized既能保证可见性,又能保证原子性,而volatile只能保证可见性,无法保证原子性 http://www.knowsky.com/1042304.html
D ThreadLocal存放的值是线程内共享的,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递