一、悲观锁
总是假定最坏的情形,每次去拿数据的时候都以为他人会修正,所以每次在拿数据的时候都会上锁,这样他人想拿这个数据就会阻塞直到它拿到锁(同享资源每次只给一个线程应用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这类锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中总是假定最坏的情形,每次去拿数据的时候都以为他
总是假定最坏的情形,每次去拿数据的时候都以为他人会修正,所以每次在拿数据的时候都会上锁,这样他人想拿这个数据就会阻塞直到它拿到锁(同享资源每次只给一个线程应用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这类锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中总是假定最坏的情形,每次去拿数据的时候都以为他