多线程
文章平均质量分 92
TheSevenSky
这个作者很懒,什么都没留下…
展开
-
协程(用户态线程)
协程(用户态线程)文章目录协程(用户态线程)协程对比线程多线程一定快吗?并发和上下文切换协程的艺术演示总结协程首先什么是协程?有人认为进程下有线程,线程管理着协程.其实这并不对协程是一种用户态线程.它比线程更加轻量并且协程对于操作系统是并不可见的.也就是说操作系统看不见协程同一时刻一个CPU只会执行一个协程.比如交给协程去执行的代码你可以理解为一个个提交的任务对比线程那什么是...原创 2019-10-24 12:19:44 · 4394 阅读 · 4 评论 -
Java并发挑战
杀鸡用宰牛刀–利用多线程和自己写的缓存求递归斐波那契虽然我这个操作然而并没有什么用可能也当写着玩, 如果你们能学到知识那就更好了多线程算法???先来介绍一下使用到了哪些东西注:如果没见过也没事, 我会慢慢讲解一.一个计算结果的通用接口二. 自己手写的具有良好伸缩性线程安全的缓存类三.利用FutureTask实现的闭锁四.多线程五.信号量(许可证)Semaphore类先看一...原创 2018-12-16 15:05:23 · 432 阅读 · 0 评论 -
AQS(AbstractQueuedSynchronizer)源码(一)
AQS(AbstractQueuedSynchronizer)源码(一)AbstractQueuedSynchronizer是并发编程的核心框架ReentrantLock. ReadWriteLock. CountDownLatch等都是基于他实现的public abstract class AbstractQueuedSynchronizerextends AbstractOwnable...原创 2019-01-01 13:23:42 · 369 阅读 · 0 评论 -
AQS(AbstractQueuedSynchronizer)源码(二)读写锁
这一次基于读写锁的讲解共享模式这里基于ReentrantReadWriteLock讲解ReentrantReadWriteLock 管理了一个读锁 和 一个写锁其中读-读共享, 读-写互斥(独占), 写-写(互斥)因为在并发读和写的时候容易发生脏读问题至于为什么使用ReentrantReadWriteLock我们大部分是使用一把锁, 读和写都锁起来但是 如果只读的话对数据没有什么影响...原创 2019-01-01 14:32:19 · 610 阅读 · 0 评论 -
那些年你不知道的并发知识(上)
知识摘要: 会讲线程安全 锁的一些相关. volatile变量 竞态条件 线程的原子性和可见性, 指令重排序. 对象的安全发布和逸出. 和一些并发的工具(信号量 栅栏 闭锁 future) 多线程与算法结合线程安全性以前我们编写串行化的知识,很少考虑到你的结果是不是因为非逻辑的错误.在多线程的情况下.就不得不为安全性去考虑了.比如,你统计你Web服务器一天的访问量.如果有大量的数据的时候,...原创 2019-01-06 17:40:44 · 425 阅读 · 0 评论 -
那些年你不知道的并发知识(下)
并发基础模块Semaphore(信号)注: 并发编程内容主要方法Semaphore semaphore = new Semaphore(size);构造方法, 给一个int类型的参数. 这个参数,代表着信号量的大小也可以叫做虚拟的许可, 初始化构造许可的大小semaphore.acquire();获得许可(只要还有剩余许可), 如果没有许可,那么acquire将阻塞直到有许可(...原创 2019-01-07 10:52:50 · 1528 阅读 · 4 评论