Java并发2-同步与锁
Object.wait/notify/notifyAll 这三个方法是在class Object 上面的,也就是所有对象都有这个方法。这里对象就是上面类比的资源,可以当成一个信号量。 Object.wait() to suspend a thread(
在通常的业务开发中,ThreadLocal 有两种典型的使用场景。
场景1,ThreadLocal 用作保存每个线程独享的对象,为每个线程都创建一个副本,这样每个线程都可以修改自己所拥有的副本, 而不会影响其他线程的副本,确保了线程安全。
场景2,ThreadLocal 用作每个线程内需要独立保存信息,以便供其他方法更方便地获取该信息的场景。每个线程获取到的信息可能都是不一样的,前面执行的方法保存了信息后,后续方法可以通过 ThreadLocal 直接获取到,避免了传参,类似于全局变量的概念。
注解是jdk1.5出现的,但是自定义处理注解的功能是1.6才有的.Element等关于注解源码抽象的支持类都是1.6出现的.
关于注解的定义就不说了,主要说说注解处理
本文根据以下资料并进行部分修改:
JavaAnnotationProcessing
Java单例模式的各种写法和序列化
参考资料
public class Singleton {
private static Singleton instance = null
private Singleton (){}
public static Singleton getInstance() {
if(instance == null) instance = new Singleton(); return instance;
}
} //饱汉式,使用时创建