![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发编程学习笔记
文章平均质量分 84
记录并发编程学习过程中笔记
bug制造姬
自己挖坑自己填专业户
展开
-
J.U.C下的AQS及相关实现类的应用与解析
AQS ( Abstract Queued Synchronizer )是一个抽象的队列同步器,通过维护一个共享资源状态( Volatile Int State )和一个先进先出( FIFO )的线程等待队列来实现一个多线程访问共享资源的同步框架。AQS 定义了两种资源共享方式:1.Exclusive:独占,只有一个线程能执行,如ReentrantLock2.Share:共享,多个线程可以同时执行,如Semaphore、CountDownLatch、CyclicBarrier。原创 2023-05-10 10:59:24 · 54 阅读 · 0 评论 -
线程的安全分析及相关问题解决方案
java内存模型是一种抽象结构,提供了合理的禁用缓存和禁止重排序的方法来解决可见性、有序性问题。本质上定义了线程与主内存之间的一种交互方式。JMM把底层存在的问题抽象到了JVM层面,再基于CPU层面提供的内存屏障指令和限制重排序等指令来解决并发性问题。原创 2023-04-06 15:04:29 · 80 阅读 · 0 评论 -
线程的基本操作和原理
作用:等待该进程终止。阻塞主线程,直到当前线程执行结束。阻塞原理:当线程存活时,会执行wait方法阻塞主线程当线程结束时,jvm会执行,进入到,执行==lock.notify_all(thread)==唤醒主线程。原创 2023-03-29 11:17:35 · 56 阅读 · 0 评论 -
线程的基本认识
1.在多核CPU中,利用多线程可以实现真正意义上的并行执行2.在一个应用进程中,会存在多个同时执行的任务,如果其中一个任务被阻塞,将会使得不依赖该任务的任务也被阻塞,通过对不同任务创建不同线程去处理,可以提升程序处理的实时性。3.线程可以认为是轻量级的进程,所以线程的创建、销毁比进程快。一个线程在一个时刻只能运行在一个CPU核心上。原创 2023-03-27 20:36:04 · 49 阅读 · 0 评论