![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高并发编程
文章平均质量分 56
济海河神
这个作者很懒,什么都没留下…
展开
-
进程、线程上下文切换的开销
进程、线程上下文切换的开销虚拟内存与地址空间映射关系虚拟内存是操作系统为每个进程提供的一种抽象,每个进程都有属于自己的、私有的、地址连续的虚拟内存,当然我们知道最终进程的数据及代码必然要放到物理内存上,那么必须有某种机制能记住虚拟地址空间中的某个数据被放到了哪个物理内存地址上,这就是所谓的地址空间映射,也就是虚拟内存地址与物理内存地址的映射关系,那么操作系统是如何记住这种映射关系的呢,答案就是页表,页表中记录了虚拟内存地址到物理内存地址的映射关系。有了页表就可以将虚拟地址转换为物理内存地址了,这种机原创 2020-09-10 11:21:07 · 6529 阅读 · 0 评论 -
synchronized的实现原理及优化思路
synchronized的作用范围 作用于方法时,锁住的是对象的实例(this); 当作用于静态方法时,锁住的是Class实例,又因为Class的相关数据存储在永久带PermGen (jdk1.8 则是 metaspace),永久带是全局共享的,因此静态方法锁相当于类的一个全局锁, 会锁所有调用该方法的线程; synchronized 作用于一个对象实例时,锁住的是所有以该对象为锁的代码块。它有多个队列, 当多个线程一起访问某个对象监视器的时候,对象监视器会将这些线程存储在不同的容原创 2020-09-10 10:56:58 · 401 阅读 · 0 评论 -
java并发-forkjoinpool的应用
package ForkJoinTaskDemo;import java.util.ArrayList;import java.util.concurrent.ExecutionException;import java.util.concurrent.ForkJoinPool;import java.util.concurrent.ForkJoinTask;import java....原创 2019-10-19 10:36:53 · 106 阅读 · 0 评论 -
java并发-扩展ThreadPoolExecutor
package ExtendThreadPoolExecutor;import java.util.concurrent.ExecutorService;import java.util.concurrent.LinkedBlockingQueue;import java.util.concurrent.ThreadPoolExecutor;import java.util.concu...原创 2019-10-19 09:58:20 · 106 阅读 · 0 评论 -
java并发-线程池
Executor框架提供了集中线程池工厂方法public static ExecutorService newFixedThreadPool(int nThreads)public static ExecutorService newSingleThreadExecutor()public static ExecutorService newCachedThreadPool()publ...原创 2019-10-17 15:42:34 · 106 阅读 · 0 评论 -
java并发同步控制-CyclicBarrier
package CyclicBarrierDemo;import java.lang.management.RuntimeMXBean;import java.util.Random;import java.util.concurrent.BrokenBarrierException;import java.util.concurrent.CyclicBarrier;public ...原创 2019-10-17 15:07:35 · 83 阅读 · 0 评论 -
java并发同步控制-CountDownLatch
应用实例package CountDownLatchDemo;import java.util.Random;import java.util.concurrent.CountDownLatch;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public cla...原创 2019-10-17 14:37:44 · 112 阅读 · 0 评论 -
java并发同步控制
重入锁——可替代synchronized麻烦的是需要手动解锁,一般在finally里面释放锁它所指的重入锁仅针对一个线程。package test;import java.util.concurrent.locks.ReentrantLock;public class ReenterLock implements Runnable { public static Reent...原创 2019-10-17 11:22:24 · 179 阅读 · 0 评论 -
java并发之同步机制——LockSupport
https://www.cnblogs.com/qingquanzi/p/8228422.html转载 2019-10-17 09:54:33 · 102 阅读 · 0 评论