ReentrantLockの簡単な使用

808 ワード

ReentrantLockの簡単な使用
ReentrantLockこれは再ロックで、Lockの直接実装サブクラスで、彼の使用は実は簡単で、ビジネスコードを書くときに、このロックを加えると、1つのスレッドしか入ってこない(reentrantLock.lock()とreentrantLock.unlock()の間に
public class OrderService {
    //   static,              ,  ,spring mvc service      ,     
    private static ReentrantLock reentrantLock = new ReentrantLock(true);
 
    public void createOrder() {
        //         ,           
        reentrantLock.lock();
        //   ,lock       try   
        try {
            //                  (       ),
            //       lock()     ,      ,   
            //     ...
            //     ...
            //     ...
        } finally {
            //    
            reentrantLock.unlock();
        }
    }
}

https://javadoop.com/2017/06/16/AbstractQueuedSynchronizer/