1、原子性:
假設有操作A和B, 如果從執行A的線程的角度看, 當其他線程執行B時, 要麼B全部執行完成, 要麼一點都沒有執行, 這樣A和B互爲原子操作, 一個原子操作是指: 該操作對於所有的操作, 包括它自己, 都滿足前面描述的狀態.
原子性的含義與它在事務性應用中相同->一組語句作爲單獨的, 不可分割的單元運行.
2、synchronized:
一個synchronized塊有兩部分, 鎖對象的引用, 以及鎖保護的代碼塊, synchronized方法是對跨越了整個方法體的synchronized塊的簡短描述.
3、互斥鎖:
內部鎖在Java中扮演了互斥鎖的角色, 意味着至多隻有一個線程可以擁有鎖, 當線程A嘗試請求線程B佔有的鎖時, 線程A必須等待或者阻塞, 直到B釋放它, 如果B永遠不釋放鎖, A將永遠等下去;