最新 最热

杂记随笔:唤醒丢失问题 & 条件变量 vs 信号量

在没有新消息进入的时候,receiver 应该放弃共享缓冲区的锁,然后进入睡眠等待 sender 唤醒。 然而上述代码的问题在于,「放弃缓冲区锁」和「进入睡眠」不是一步原子操作,而是独立的两步操作。...

2022-10-27
2

高并发之API接口,分布式,防刷限流,如何做

降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开

2022-10-27
2

8-并发包

在实际开发中不考虑线程安全的情况下,一般不需要做线程安全处理,防止过多的处理导致性能变差

2022-10-27
5

Juc并发编程16——Semaphore,Exchanger,Fork/Join框架

java中的信号量也有很大的作用,它可以限制一个代码块可以同时被访问的线程数量(加排他锁锁可以限制只被一个线程访问),相当于流量控制。简单来说,它就是一个可以被N个线程同时占用的排它锁(因此也支持公平锁和非公平锁)...

2022-10-26
2

Juc并发编程15——循环屏障CyclickBarrier使用与源码剖析

如果打一场游戏,必须等待游戏的玩家足够以后才开始,并且为了公平,所有玩家必须同时进入游戏。循环屏障CyclickBarrier就是为了解决这种场景而设计的....

2022-10-26
2

Juc并发编程13——如何实现一个线程池?(万字源码剖析)

前面我们已经介绍过线程池的使用了,下面我们来深挖它的实现原理,其原理比较复杂,准备好,发车。

2022-10-26
3

深入理解JUC:第六章:Semaphore信号灯

Semaphore 是 synchronized 的加强版,作用是控制线程的并发数量

2022-09-28
2

计算机错误代码0x 00000006,什么原因造成了蓝屏 电脑蓝屏错误代码介绍

电脑蓝屏是在上网的时候再常见到的现象了,造成电脑蓝屏的原因很多,所以微软在操作系统中设计了蓝屏代码,让大家电脑在出现蓝屏的时候能够及时的发现是什么原因造成了蓝屏。...

2022-08-28
2

深入理解JUC:第六章:Semaphore信号灯

Semaphore 是 synchronized 的加强版,作用是控制线程的并发数量

2022-08-18
2

信号(三)- 示例演示

Main、Producer 和 Consumer 这三个类中的每一个都有自己的 Run 方法,最好在各自的终端窗口中运行它们。每次运行时,它都会显示它为日志生成的消息。一旦用户通过提供它正在等待的输入来响应 Main 类,Main 的 Run 方法将...

2022-08-03
2