爪哇学习笔记——并发编程
又肥又壮的韭菜
这个作者很懒,什么都没留下…
展开
-
爪哇学习笔记—并发编程2(工具)
2、线程的并发工具类 Fork-Join 什么是分而治之? 规模为N的问题,N<阈值,直接解决,N>阈值,将N分解为K个小规模子问题,子问题互相对立,与原问题形式相同,将子问题的解合并得到原问题的解 动态规范 工作密取 workStealing Fork/Join使用的标准范式 常用的并发工具类 CountDownLatch 作用:是一组线程等待...原创 2019-04-22 08:51:32 · 196 阅读 · 0 评论 -
爪哇学习笔记—并发编程1
1、线程基础、线程之间的共享和协作 基础概念 CPU核心数和线程数的关系 核心数:线程数=1:1 ;使用了超线程技术后---> 1:2 CPU时间片轮转机制 又称RR调度,会导致上下文切换 什么是进程和线程 进程:程序运行资源分配的最小单位,进程内部有多个线程,会共享这个进程的资源 线程:CPU调度的最小单位,必须依赖进程而存在。 澄清并行和并发 ...原创 2019-04-18 13:25:59 · 388 阅读 · 0 评论 -
爪哇学习笔记—并发编程3
3、原子操作CAS Atom(不可分割) 什么是原子操作?如何实现原子操作? syn基于阻塞的锁的机制,1、被阻塞的线程优先级很高,2、拿到锁的线程一直不释放锁怎么办?3、大量的竞争,消耗cpu,同时带来死锁或者其他安全。 CAS的原理 CAS(Compare And Swap),指令级别保证这是一个原子操作 三个运算符: 一个内存地址V,一个期望的值A,一个新值B 基本思路:...原创 2019-04-27 21:39:27 · 174 阅读 · 0 评论 -
爪哇学习笔记—并发编程4
4、显式锁和AQS 显式锁 Lock接口和核心方法 Lock接口和synchronized的比较 synchronized 代码简洁,Lock:获取锁可以被中断,超时获取锁,尝试获取锁,读多写少用读写锁 可重入锁ReentrantLock、所谓锁的公平和非公平 如果在时间上,先对锁进行获取的请求,一定先被满足,这个锁就是公平的,不满足,就是非公平的 非公平的效率一般来讲更高...原创 2019-04-27 21:50:42 · 117 阅读 · 0 评论