会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
MXC
博客园
首页
新随笔
联系
管理
订阅
上一页
1
···
7
8
9
10
11
12
13
下一页
2020年5月5日
线程池(Java中有哪些方法获取多线程)
摘要: 线程池(Java中有哪些方法获取多线程) 前言 获取多线程的方法,我们都知道有三种,还有一种是实现Callable接口 实现Runnable接口 实现Callable接口 实例化Thread类 使用线程池获取 Callable接口 Callable接口,是一种让线程执行完成后,能够返回结果的 在说到
阅读全文
posted @ 2020-05-05 15:35 MXC肖某某
阅读(2812)
评论(0)
推荐(0)
2020年5月1日
Synchronized和Lock的区别
摘要: Synchronized和Lock的区别 前言 早期的时候我们对线程的主要操作为: synchronized wait notify 然后后面出现了替代方案 lock await singal 问题 synchronized 和 lock 有什么区别?用新的lock有什么好处?举例说明 synchr
阅读全文
posted @ 2020-05-01 10:34 MXC肖某某
阅读(258)
评论(0)
推荐(0)
2020年4月30日
阻塞队列BlockingQueue
摘要: 阻塞队列 概念 队列 队列就可以想成是一个数组,从一头进入,一头出去,排队买饭 阻塞队列 BlockingQueue 阻塞队列,排队拥堵,首先它是一个队列,而一个阻塞队列在数据结构中所起的作用大致如下图所示: 线程1往阻塞队列中添加元素,而线程2从阻塞队列中移除元素 当蛋糕店的柜子空的时候,无法从柜
阅读全文
posted @ 2020-04-30 23:33 MXC肖某某
阅读(746)
评论(0)
推荐(0)
2020年4月29日
CountDownLatch/CyclicBarrier/Semaphore
摘要: CountDownLatch 概念 让一些线程阻塞直到另一些线程完成一系列操作才被唤醒 CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,调用线程就会被阻塞。其它线程调用CountDown方法会将计数器减1(调用CountDown方法的线程不会被阻塞),当计数器的值变
阅读全文
posted @ 2020-04-29 09:03 MXC肖某某
阅读(300)
评论(0)
推荐(0)
2020年4月28日
独占锁(写锁) / 共享锁(读锁) / 互斥锁
摘要: 独占锁(写锁) / 共享锁(读锁) / 互斥锁 概念 独占锁:指该锁一次只能被一个线程所持有。对ReentrantLock和Synchronized而言都是独占锁 共享锁:指该锁可以被多个线程锁持有 对ReentrantReadWriteLock其读锁是共享,其写锁是独占 写的时候只能一个人写,但是
阅读全文
posted @ 2020-04-28 09:18 MXC肖某某
阅读(3334)
评论(0)
推荐(0)
2020年4月27日
Java锁之自旋锁
摘要: Java锁之自旋锁 自旋锁:spinlock,是指尝试获取锁的线程不会立即阻塞,而是采用循环的方式去尝试获取锁,这样的好处是减少线程上下文切换的消耗,缺点是循环会消耗CPU 原来提到的比较并交换,底层使用的就是自旋,自旋就是多次尝试,多次访问,不会阻塞的状态就是自旋。 优缺点 优点:循环比较获取直到
阅读全文
posted @ 2020-04-27 22:15 MXC肖某某
阅读(685)
评论(0)
推荐(0)
可重入锁和递归锁
摘要: 可重入锁和递归锁ReentrantLock 概念 可重入锁就是递归锁 指的是同一线程外层函数获得锁之后,内层递归函数仍然能获取到该锁的代码,在同一线程在外层方法获取锁的时候,在进入内层方法会自动获取锁 也就是说: ReentrantLock / Synchronized 就是一个典型的可重入锁 代码
阅读全文
posted @ 2020-04-27 09:41 MXC肖某某
阅读(863)
评论(0)
推荐(0)
Java锁之公平锁和非公平锁
摘要: Java锁之公平锁和非公平锁 概念 公平锁 是指多个线程按照申请锁的顺序来获取锁,类似于排队买饭,先来后到,先来先服务,就是公平的,也就是队列 非公平锁 是指多个线程获取锁的顺序,并不是按照申请锁的顺序,有可能申请的线程比先申请的线程优先获取锁,在高并发环境下,有可能造成优先级翻转,或者饥饿的线程(
阅读全文
posted @ 2020-04-27 08:51 MXC肖某某
阅读(578)
评论(0)
推荐(0)
2020年4月26日
集合线程不安全
摘要: Collection线程不安全的举例 前言 1、当我们执行下面语句的时候,底层进行了什么操作 底层创建了一个空的数组,伴随着初始值为10 当执行add方法后,如果超过了10,那么会进行扩容,扩容的大小为原值的一半,也就是5个,使用下列方法扩容 单线程环境下 单线程环境的ArrayList是不会有问题
阅读全文
posted @ 2020-04-26 09:37 MXC肖某某
阅读(431)
评论(0)
推荐(0)
2020年4月25日
原子类的ABA问题
摘要: 原子类AtomicInteger的ABA问题 连环套路 从AtomicInteger引出下面的问题 CAS Unsafe CAS底层思想 ABA 原子引用更新 如何规避ABA问题 ABA问题是什么 狸猫换太子 假设现在有两个线程,分别是T1 和 T2,然后T1执行某个操作的时间为10秒,T2执行某个
阅读全文
posted @ 2020-04-25 17:48 MXC肖某某
阅读(1336)
评论(0)
推荐(0)
上一页
1
···
7
8
9
10
11
12
13
下一页
公告