随笔分类 - 渡劫之路-------高并发java编程实践
摘要:一.声明式事务配置: 二.声明式事务失效,原因 根本原因:由子容器扫描装配了@Service 注解的实例。 spring的context是父子容器,由ServletContextListener 加载spring配置文件产生的是父容器,springMVC加载配置文件产生的是子容器,子容器对Contr
        阅读全文
                
摘要:1、cynchronized扩展:可重锁入ReentrantLock ReentrantLock是通过cas算法实现的 RenntrantLock lock=new ReentrantLock(); lock.lock();//如果资源被占用则会等待 //代码锁定区域 finally{ //必须手动
        阅读全文
                
摘要:ReentrentLock lock=new ReentrentLock(); lock.lock(); //锁的代码 finally{ lock.unlock(); } ReentrentLock 比synchronized具有更好的扩展性 ReentrentLock 可以通过lockInterr
        阅读全文
                
摘要:ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁等候的一些特性。此外,它还提供了在激烈争用情况下更佳的性能。
        阅读全文
                
摘要:wait和notify是针对sychronized锁定对象的 sychronized(object)object.wait();//释放object的锁sychronized(object)object.notify();//会随机唤起一个对object枷锁的等待线程,这个过程是随机唤醒的,不公平的
        阅读全文
                
摘要:transient是在对象序列化的时候,不参与序列化的字段。 如LinkedList实现了Serializable,其中有变量transient int size = 0; 在Serializable序列化的时候size时不会参与序列化的,如用ObjectOutputStream读取LinkedLi
        阅读全文
                
 
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号