在多進程(線程)訪問共享資源時,可以確保全部其餘的進程(線程)都不在同一時間內訪問相同的資源,(要麼徹底執行,要麼徹底不執行)redis
有個變量X=0,要進行+1操做,步驟以下:併發
如今有人進行另外一個操做 +2;步驟以下;線程
若是操做不是原子性的,指令就會錯亂,獲得的結果多是1,2,3狀況都可能出現;
若是操做是原子性的,就能夠保證在進行加1操做的時候其餘操做沒法插入進來,在完成操做後他才能開始進行他的操做,從而保證數據是可靠的。進程
Redis全部單個命令的執行都是原子性的,這與它的單線程機制有關;
Redis命令的原子性使得咱們不用考慮併發問題,能夠方便的利用原子性自增操做 實現簡單計數器功能;資源