实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突)乐观锁乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时(更新操作),想法很乐观,认为这次的操作不会导致冲突,在操作数据时,并不进行任何其他的特殊处理(也就是不加锁),而在进行更新后,再去判断是否有冲突了。通常实现是这...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-07-22 10:08:27
                            
                                220阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发(线程安全)问题。解决并发问题可以用锁。java的内置锁:每个java对象都可以用做一个实现同步的锁,这些锁称为内置锁。线程进入同步代码块或方法的时候会自动获得该锁,在退出同步代码块或方法时会释放该锁。获得内置锁的唯一途径就是进入这个锁保护的同步代码块或方法。java内置锁是一个互斥锁,这就意味着最多只有一个线程能够获得该锁,当线程A            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-19 16:58:55
                            
                                78阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象,在使用时能快速找到的对象,这就是注解的意思。如果还是有点懵,那就只需要记住,凡是被标注的对象都是特殊            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-12-29 11:41:31
                            
                                369阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            线程是一个程序的多个执行路径,执行调度的单位,依托于进程存在。线程不仅可以共享进程的内存,而且还拥有一个属于自己的内存空间,这段内存空间也叫做线程栈,是在建立线程时由系统分配的,主要用来保存线程内部所使用的数据,如线程执行函数中所定义的变量。注意:Java中的多线程是一种抢占机制而不是分时机制。抢占机制指的是有多个线程处于可运行状态,但是只允许一个线程在运行,他们通过竞争的方式抢占CPU。定义一个            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2017-03-20 14:34:20
                            
                                360阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            可重入锁(递归锁) 本文里面讲的是广义上的可重入锁,而不是单指 JAVA 下的 ReentrantLock。可重入锁,也叫做递归锁,指的是同一线程 外层函数获得锁之后 ,内层递归函数仍然有获取该锁的代码,但不受影响。在 JAVA 环境下 ReentrantLock 和 synchronized 都是            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-08-31 16:05:37
                            
                                104阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            记得在上大学那会开始,在大学的课堂上,常常会听到什么共享锁,排它锁各种锁的词汇,以前仅仅听过一次就没有管了,并没有进行深入的研究 最近,在各种群里,又看见了什么乐观锁、悲观锁什么鬼的感觉很高级的词汇,于是乎今天对这几个概念进行学习,揭开它神秘的面纱,缕缕思路记录下我对这几个概念的想法 实验环境: m            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2019-04-19 16:27:00
                            
                                59阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            上一章我们已经简要的介绍了Java中的一些锁,本章我们就详细的来说说这些锁。synchronized锁 synchronized锁是什么?synchronized是Java的一个关键字,它能够将代码块(方法)锁起来它使用起来是非常简单的,只要在代码块(方法)添加关键字synchronized,即可以实现同步的功能~public synchronized void test() {            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-16 13:42:22
                            
                                62阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录用户态与内核态CAS 原理用户态与内核态linux操作系统体系架构分为用户态和内核态,内核控制计算机的硬件资源,并提供上层应用程序的运行1环境,用户态即上层应用程序的活动空间,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-24 16:11:20
                            
                                92阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            java锁的知识点锁的概念synchronizedReentrantLock重入锁ReadWriteLock读写锁CAS 锁的概念锁是为了保证数据一致性,必须采取的手段 锁的分类为 1.乐观锁,悲观锁{乐观锁:认为一个线程去拿数据的时候不会有其他线程对数据进行更改,所以不会上锁 实现方式:CAS机制、版本号机制悲观锁:悲观锁认为一个线程去拿数据时一定会有其他线程对数据进行更改。所以一个线程在拿数            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-20 11:52:22
                            
                                25阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            悲观锁与乐观锁 悲观锁:悲观锁悲观的认为每一次操作都会造成更新丢失问题,在每次查询时加上排他锁。每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Select * from xxx for update;乐观锁:            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-21 20:52:47
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录用户态与内核态CAS 原理用户态与内核态linux操作            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-05-31 17:08:38
                            
                                183阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            掌握Java中锁是Java多线程编程中绕不开的知识,只有知道理解Java各种锁才能在编码过程中灵活运用,写出更高效的多线程程序。而理解掌握锁的第一步,可从宏观上对比理解一下各种锁概念。 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2017-11-03 08:23:00
                            
                                83阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            记得在上大学那会开始,在大学的课堂上,常常会听到老师讲什么共享锁,排它锁各种锁的词汇,以前仅仅听过一次就没有管了,并没有进行深入的研究最近,在各种群里,又看见了什么乐观锁、悲观锁什么鬼的感觉很高级的词汇,于是乎今天对这几个概念进行学习,揭开它神秘的面纱,缕缕思路记录下我对这几个概念的想法实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-20 11:19:28
                            
                                179阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突)乐观            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-25 17:23:04
                            
                                33阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Ⅰ.Java的定义定义:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Ⅱ.Java的特点Java具有简单性、面向对象、网络技能强大、健壮性、安全性、平台独立与可移植性、高性能、多线程、动态性等            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-15 21:03:23
                            
                                45阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            多线程确实给我们在效率上给我们带来了很大的便利,但是不得不考虑多个线程之间对资源竞争引起的安全问题。同步关键字synchronized是我们比较熟悉的用来解决线程安全的一个关键字,但是锁(Lock)是一个在资源竞争激励的情况下性能更优于synchronized的方法。 1.可重入锁  如果锁具备可充入性,则成为可充入锁,像synchronized和Reentrant都是可重入锁,可重入性时间是表明            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-18 17:21:01
                            
                                79阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            ### 什么是线程安全?
 线程安全是指当一个对象被多个线程访问操作时,最终都能得到正确的结果,那这个对象是线程安全的。Java 中可以通过同步块和加锁保障线程安全。
 ------
 ### 锁
 锁是 Java 并发编程中最重要的同步机制,它可以让等待在临界区的线程互斥执行。
 #### 关键字 synchronized 
 synchronized 也是一种锁,它通过            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-11 09:16:53
                            
                                27阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            实验环境: mysql5.6 存储引擎:innoDB 我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突) 乐观锁乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时(更新操作),想法很乐观,认为这次的操作不会导致冲突,在操作数据时,并不进行任何其他的特殊处理(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2019-01-24 23:07:00
                            
                                95阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            共享锁 共享锁指的就是对于多个不同的事务,对同一个资源共享同一个锁。相当于对于同一把门,它拥有多个钥匙一样。就像这样,你家有一个大门,大门的钥匙有好几把,你有一把,你女朋友有一把,你们都可能通过这把钥匙进入你们家,进去啪啪啪啥的,一下理解了哈,没错,这个就是所谓的共享锁。 刚刚说了,对于悲观锁,一般            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2018-04-18 13:50:00
                            
                                86阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            重入锁这个锁相当于一个递归锁,如果上层代码已经获得到了锁的所有权,那么他的子代码也直接拥有所有权,重入锁的常见有Lock锁(轻量级锁) 和 synchronize(重量级锁)读写锁相比Java中的锁(Locks in Java)里Lock实现,读写锁更复杂一些。假设你的程序中涉及到对一些共享资源的读和写操作,且写操作没有读操作那么频繁。在没有写操作的时候,两个线程同时读一个资源没有任何问题,所以应            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-04 15:56:28
                            
                                76阅读