并发三大特性: 原子性:即对于一组操作,要么都成功,要么都失败。例如常见的转账操作就必须保证原子性。 可见性:每个线程的私有内存改变变量值时,其他线程对其可见。原因是每个线程为了提高运行效率,会从主存获取数据到本地,本地数据更新后,其他线程未同步数据,会道闸数据异常。 有序性:程序按一定的顺序执行, ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-15 09:51:00
                            
                                173阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            共享性 数据共享性是线程安全的主要原因之一。 如果所有的数据只是在线程内有效,那就不存在线程安全性问题,这也是我们在编程的时候经常不需要考虑线程安全的主要原因之一。 在多线程编程中,数据共享是不可避免的。 最典型的场景是数据库中的数据,为了保证数据的一致性,我们通常需要共享同一个数据库中的数据。 互            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-05-12 14:35:00
                            
                                66阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Go语言的并发编程模型以轻量级Goroutine和CSP通信机制为核心,支持高并发、低开销的并发任务调度与协调。通过M:N调度模型,成千上万的Goroutine可在少量OS线程上高效运行。Channel用于Goroutine间通信与同步,避免数据竞争,提升程序安全性。此外,Go还提供`sync.Mu... ...            
                
         
            
            
            
            原子性:指在一个操作中,所有的子操作都是一个整体,要么同时全部执行,要么同时不执行,且在执行过程中,不能被挂起,直到执行完。基本类型不大于32位的都具有原子性,对于大于32位的基本类型,例如:Long丶Double变量,看作2个原子性为32位值时,而不是一个原子性64位值,这样的一个long型值保存到内存的时候,可能执行2次32位操作,2个竞争线程想写不同的值到内存的时候,可能导致内置的值不正确结            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-03 16:01:01
                            
                                56阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            并发编程三大特性 1.原子性 2.有序性 3.可见性 可见性 由于缓存机制,导致不同cpu核心操作同一个变量的时候会出现数据不一致情况 三级缓存 现代一颗cpu一般会包含多个cpu核 如4颗8核 每个cpu核包含L1,L2缓存,每颗cpu包含L3缓存.L1,L2是核独享,L3是cpu的所有核共享 c            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-18 09:06:20
                            
                                67阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在前文中,我们已经介绍了Go语言的错误处理机制和反射特性。在本文中,我们将深入探讨Go语言的并发编程高级特性。Go语言以其            
                
         
            
            
            
            工作中许多地方需要涉及到多线程的设计与开发,java多线程开发当中我们为了线程安全所做的任何操作其实都是原...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-30 10:59:03
                            
                                269阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Java 的 `java.util.concurrent` 包提供了一系列强大的工具类,帮助开发者高效地管理并发任务、线程池和锁。本文将深入探讨这些高级特性,并通过代码样例展示其实际应用。            
                
         
            
            
            
            并发编程是Java开发中的一个复杂领域,它要求开发者不仅要理解底层的线程机制,还要掌握同步技术和并发工具的使用。在这篇文章中,我们将讨论Java并发编程的最佳实践,如何避免常见的并发问题,并且探索Java 8及更高版本中引入的新并发特性。并发编程的最佳实践为了编写健壮和高效的并发代码,开发者应该遵循一些最佳实践:尽量使用并发工具类:Java的java.util.concurrent包提供了大量的并            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                            精选
                                                        
                            2023-12-12 09:11:04
                            
                                307阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            @TOC(目录)事务1.概念事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部失败。在不同的环境中,都可以有事务。对应在数据库中,就是数据库事务。事务就是把若干个SQL的操作打包成了一个整体,实际执行的时候,如果这个整体执行了一半,就遇到了突发情况,MySQL就能保证突发情况恢复之后,数据库的数据没有受到破坏.不是说一定能保证所有的操作都能一口气执行完,实际上是通过"回滚"(            
                
                    
                        
                                                            
                                                                        
                                                                推荐
                                                                                        原创
                                                                                    
                            2022-05-03 15:05:30
                            
                                9556阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            JDK给我们提供了一个并发编程的包java.util.current,并发编程包中是锁功能更加强大,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-08-26 07:19:41
                            
                                162阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            并行和并发 并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。 并            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-02-26 10:04:45
                            
                                166阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            juc 是 java.util.concurrent 的简称,为了支持高并发任务,在编程时可以有效减少竞争条件和死锁线程.juc 主要包含 5 大工具包工具包描述locks- R            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-17 12:12:37
                            
                                67阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            LockSupport是用来创建锁和其他同步类的基本线程阻塞原语。LockSupport主要提供了两            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-08-26 07:19:28
                            
                                122阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            并行和并发都是多任务处理的概念,但它们的含义不同。并行是指两个或多个任务在同一时刻执行,即在同一时刻            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-17 13:42:49
                            
                                67阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、进程与线程、二、并发、三、线程间通信、四、Java 并发 3 特性、            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-03-08 09:44:13
                            
                                73阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录并发容器阻塞队列BlockingQueue实现类ArrayBlockingQueueLinkedBlockingQueuePriorityBlockingQueueSynchronong            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-07-29 10:59:16
                            
                                170阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            @[toc](Java 并发)一:Java线程模型什么是线程模型?线程模型指的是用户线程与操作系统的线程的连接方式。线程模型一共有三种,分别是 一对一、一对多、多对多三种。也就是用户线程和操作系统线程的映射方式。二:ThreadPoolExecutor(线程池)为什么要有线程池
减少开销。重复使用线程资源,减少内核调用,防止开发人员频繁创建线程
便于管理。线程池可以维护线程状态。ThreadPoo            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-21 09:37:52
                            
                                85阅读
                            
                                                                             
                 
                
                                
                    