Java BlockingQueue接口java.util.concurrent.BlockingQueue表示一个可以存取元素,并且线程安全的队列。换句话说,当多线程同时从 JavaBlockingQueue中插入元素、获取元素的时候,不会导致任何并发问题(元素被插入多次、处理多次等问题)。 从j ...
分类:
编程语言 时间:
2021-06-02 18:20:11
阅读次数:
0
最大连接数 show variables like '%max_connections%'; 最大连接数 对于并发编程了解过的人知道,这个151不是越大越好,一般来说设置为 最大连接数 = cpu X 2 会比较合适, 因为受 IO 影响,连接数越大,反而越会占用IO,所以设置过大也可能导致性能降低 ...
分类:
数据库 时间:
2021-06-02 15:17:51
阅读次数:
0
🐉 大致介绍 本章讲解一下CAS,本质就是机器指令:cmpxchg+lock(根据处理器核数进行判断) 原子操作; 而在谈到并发操作里面,我们不得不谈到AQS,JDK的源码里面好多并发的类都是通过Sync(同步器)的内部类继承AQS而实现出五花八门的功能; 🐉 简单认识AQS 🐉 何为AQS? ...
分类:
编程语言 时间:
2021-05-24 14:01:29
阅读次数:
0
并发编程-重排序 重排序是指编译器和处理器为了优化程序性能而对指令序列进行重新排序的一种手段。 一、数据依赖性[相关] 若两个操作访问同一变量,且有一个为写操作,此时产生数据依赖性。数据以来分为下列 3 中类型: | 名称 | 代码示例 | 说明| | | | | | 写后读 | a = 1; b ...
分类:
编程语言 时间:
2021-05-24 06:06:37
阅读次数:
0
学习计算机技术最好的方式就是看各种经典书籍,这里是不建议把博客之类当成主要学习途径的,博客之类的知识是没有书本那么系统和详细。 有些同学不知道买什么书籍,所以这次,将我自己觉得不错的一些书籍,分享给大家,有需要的可以赶紧囤购一波(当当最近在搞满减活动)。 Java不同阶段学习书籍 步入IT行业 《J ...
分类:
其他好文 时间:
2021-05-24 03:08:26
阅读次数:
0
C++并发编程基础 在C++线程库中提供一个native_handle()成员函数,允许通过使用平台相关API直接操作底层实现。 为了并发地运行函数,需要使用特定的函数以及对象来管理各个线程。C++在头文件中提供了管理线程的类和函数 一个简单的Hello, Concurrent World程序: # ...
分类:
编程语言 时间:
2021-04-29 12:07:22
阅读次数:
0
1.上下文切换 CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。 因此任务从保存到再加载的过程就是一次上下文切换。 2.减少上下文切换的方法 包括无锁并发编程、CAS算法、使 ...
分类:
其他好文 时间:
2021-04-24 13:36:29
阅读次数:
0
Mutex系列是根据我对晁岳攀老师的《Go 并发编程实战课》的吸收和理解整理而成,如有偏差,欢迎指正~ 目标本系列除了希望彻底学习和了解 golang 中 sync.Mutex 的原理和使用,更希望借 golang 中 Mutex 的发展和演变,了解并发场景下锁的设计与实现方法以及不同业务场景下的一 ...
分类:
其他好文 时间:
2021-04-22 15:35:38
阅读次数:
0
并发执行-并发编程 ###1.物理机 01.Windows NumberOfCores NumberOfLogicalProcessors cpu个数 是指物理上安装了几个cpu,一般的个人电脑是安装了1个cpu cpu内核数 是指物理上,一个cpu芯片上集成了几个内核单元,现代cpu都是多核的。 ...
分类:
编程语言 时间:
2021-04-22 15:31:55
阅读次数:
0
等待唤醒机制: 1:我们知道Object中有wait/notify机制,但是这种机制是基于Monitor机制实现,使用Monitor Object操作的,所以wait/notify方法是在sychronized作用域范围内才能使用的,不然会报错。 而且notify要在wait方法调用之后进行调用才有 ...
分类:
其他好文 时间:
2021-04-22 15:27:51
阅读次数:
0