E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
无锁
muduo源码学习base——Atomic(原子操作与原子整数)
Atomic(原子操作与原子整数)前置知识AtomicIntegerTget()getAndAdd()getAndSet()关于原子操作实现
无锁
队列(lock-free-queue)前置知识happens-before
4nc414g0n
·
2023-10-24 15:51
muduo
Learn
服务器
LeetCode 22. 括号生成【字符串,回溯;动态规划】中等
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-24 08:21
回溯
记忆化搜索
动态规划
1024程序员节
java并发编程:管程、内存模型、
无锁
并发、线程池、AQS原理与锁、线程安全集合类、并发设计模式
文章目录基础1.进程与线程2.并发与并行3.同步与异步4.主线程与守护线程5.Thread与Runnable6.线程方法7.线程状态管程1.共享问题、临界区、竞态条件2.Monitor3.synchronized4.wait¬ify5.Park&Unpark6.活跃性7.ReentrantLock8.lockvssynchronized内存模型1.线程切换带来的原子性2.缓存导致的可见性3.
Henrik-Yao
·
2023-10-24 01:22
东北大学在校期间
高并发
JUC
线程池
锁
java
共享模型之
无锁
1.共享模型之
无锁
管程即monitor是阻塞式的悲观锁实现并发控制,同样可以非阻塞式的乐观锁的来实现并发控制1.1问题提出有如下需求,保证account.withdraw取款方法的线程安全publicclassTest5
weixin_50458070
·
2023-10-23 23:40
java
jvm
开发语言
多线程与高并发
1.synchronized四种状态以及锁升级过程
无锁
->偏向锁->轻量级锁(cas)->重量级锁当只有一个线程进行加锁的时候,默认会使用偏向锁一旦有线程竞争就会升级成轻量级锁(未获得锁的线程会通过自旋等待获取锁
6596dfcf0778
·
2023-10-22 15:25
第三章JUC高并发容器
1、简介JUC基于非阻塞算法(LockFree,
无锁
编程)提供了一组高并发容器,包括高并发的List、Set
黑魔仙 小月
·
2023-10-22 12:59
多线程
java
002-多线程-JUC集合-List-CopyOnWriteArrayList
一、概述CopyOnWriteArrayList是Java并发包中提供的一个并发容器,它是个线程安全且读操作
无锁
的ArrayList,写操作则通过创建底层数组的新副本来实现,是一种读写分离的并发策略,我们也可以称这种容器为
dilv4062
·
2023-10-22 12:25
java
数据结构与算法
LeetCode 1879. 两个数组最小的异或值之和【记忆化搜索,状压DP,位运算】2145
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-22 07:07
动态规划
记忆化搜索
leetcode
算法
职场和发展
构建
无锁
的线程安全架构:掌握Java中ThreadLocal的原理灵活应用
ThreadLocal是Java提供的一个线程级别的变量存储工具,它允许每个线程都有自己独立的变量副本,每个线程可以独立地操作自己的变量副本,互不干扰。本文将详细介绍ThreadLocal的原理和使用场景,并通过代码示例进行讲解。一、ThreadLocal的原理1.1概述ThreadLocal提供了一种简单的方式来实现线程封闭(Threadconfinement),即将数据与线程关联起来,确保每个
肥肥技术宅
·
2023-10-21 04:48
java
java
开发语言
138.【JUC并发编程- 03】
JUC并发编程-03(六)、共享模型之
无锁
1.问题提出(1).为什么不安全?
吉士先生
·
2023-10-21 01:00
java
redis
开发语言
如何优化API性能
异步日志记录首先将日志发送到
无锁
缓冲区,然后立即返回。•日志将定期刷新到磁盘,这显著减少了I/O开销
小技术君
·
2023-10-20 22:50
java的“看门狗”锁续期可以用php redis这样实现【php锁续期、分布式锁、
无锁
请求队列超卖】解决【商家超卖(商品库存控制)、用户超买(秒杀订单控制)】问题。非demo 线上一直在用
要求与痛点描述1.不允许使用库存创建队列因为库存如果是10w难道要创建一个10w长度的队列吗2.不允许对整个业务过程加锁可能业务执行时间很长导致锁粒度太大影响并发量3.如果业务时间大于锁时间会造成锁失效需要实现锁续期4.需要解决“超买”问题对于秒杀除了库存并发问题还有单用户购买问题限制例如同一个不能多生成多笔相同订单5.“超卖”问题主要解决库存不能为负数或订单总量库存大于销售库存6.需要支持连接池
varphp
·
2023-10-20 20:04
后端
redis
mysql
php
golang
后端
LeetCode 2530. 执行 K 次操作后的最大分数【贪心,原地堆化】1386
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-20 08:10
贪心
优先队列-二叉堆
leetcode
算法
职场和发展
谈谈乐观锁
乐观锁就是比较乐观,认为自己在使用数据的时候,不会有其他线程对其进行修改,所以就不会加锁,说白了乐观锁,根本没有锁,是一种
无锁
编程。
一切随缘~~~
·
2023-10-19 19:12
JUC并发编程
java
数据库
开发语言
JUC
LeetCode 2894. 分类求和并作差【数学,容斥原理】1140
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-19 11:46
数学
leetcode
算法
职场和发展
LeetCode 2895. 最小处理时间【贪心,排序】1351
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-19 06:48
贪心
排序
leetcode
算法
职场和发展
(实践)一文搞定synchronized锁升级过程
一文搞定synchronized锁升级过程一、
无锁
状态二、偏向锁org.openjdk.joljol-core0.16一、
无锁
状态publicclassMySynchronizedLock{publicstaticvoidmain
Java养家
·
2023-10-19 02:43
java
开发语言
SpringBoot整合Caffeine实现缓存
Caffeine具有以下特点:高性能:Caffeine使用了一些优化技术,如基于链表的并发哈希表和
无锁
算法,以提供卓越的读写性能。
无语堵上西楼
·
2023-10-18 14:37
工作问题总结
缓存
java
【JUC】10. synchronized与锁升级
文章目录1.锁升级过程1.1
无锁
1.2偏向锁1.2.1偏向锁的撤销1.3轻量级锁1.4重量级锁2.锁关系之hashcode关系3.总结4.锁清除5.锁粗化1.锁升级过程为什么会出现锁升级呢?
起名方面没有灵感
·
2023-10-18 09:07
JUC
java
jvm
面试
synchronized锁升级
synchronized锁升级目录synchronized锁升级1.synchronized锁本质1.1Java层面1.2字节码层面1.3JVM层面(对象头)2.synchronized锁升级2.1
无锁
java白中白.
·
2023-10-18 09:37
java
java
Synchronized和锁升级
文章目录1、Synchronized关键字2、
无锁
3、偏向锁3.1、是什么3.2、核心原理3.3、加载过程3.4、偏向锁的膨胀和撤销4、轻量级锁4.1、是什么4.2、核心原理4.3、轻量级锁的膨胀5、重量级锁
King Gigi.
·
2023-10-18 08:35
jvm
java
开发语言
【JVM】synchronized与锁升级
文章目录1.synchronized锁优化背景2.synchronized锁性能优化过程2.1java5以前2.2monitor锁2.3java6开始3.
无锁
4.偏向锁4.1背景4.2理论落地4.3技术实现
比尔高特
·
2023-10-18 08:57
#
03
JUC
java
LeetCode 2906. 构造乘积矩阵【前后缀分解,数组】中等
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-17 21:18
算法技巧-前缀和
数组
leetcode
矩阵
linux
常用的队列
队列对比队列场景优点缺点ConcurrentLinkedQueue1非阻塞线程安全最佳queue2对全局的集合进行操作的场景3一个适用于高并发场景下的队列,通过
无锁
的方式(CAS+volatile),实现了高并发下的高性能
BACKWASH2038
·
2023-10-17 06:19
java
队列
LeetCode 2256. 最小平均差【数组,前后缀分解】1394
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-17 05:52
算法技巧-前缀和
leetcode
算法
职场和发展
【026 夏天 流明 猫】何以
此间作罢却埋种,笑语再
无锁
眉间。古来男儿为红裙,金钗指点半江山。今朝功成恋酒肆,废荡心力为哪般。
雨御林
·
2023-10-17 01:34
身为程序员,你很有必要了解一下JNPF
可导出应用全部源码,
无锁
定,自由开发和部署;前后端分离技术,后端采用java/.Net主流开发技术栈,前端同时适配V
这我可不懂
·
2023-10-16 22:06
低代码
channel 源码解析
收发操作均遵循了先进先出的设计,具体规则如下:先从Channel读取数据的Goroutine会先接收到数据;先向Channel发送数据的Goroutine会得到先发送数据的权利;Go语言社区也在2014年提出了
无锁
Xuenqlve
·
2023-10-16 20:06
LeetCode LCR 191. 按规则计算统计结果【前后缀分解】中等
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-16 17:55
算法技巧-前缀和
leetcode
算法
职场和发展
Java并发编程——CAS(Compare And Swap)比较与交换
本文的重点,就是处理
无锁
状态下共享数据的并发问题中的一种解决算法——CAS(CompareAndSwap)比较与交换算法。乐观锁、悲观锁首先先了解一
Viewwuyou
·
2023-10-16 16:37
java
多线程
并发编程
Golang之CAS算法(compare and swap)
Golang之CAS算法(compareandswap)CAS算法(compareandswap)CAS是如何运行的Go中的CAS源码CAS的缺陷CAS算法(compareandswap)CAS算法是一种有名的
无锁
算法
~庞贝
·
2023-10-16 16:06
Golang底层
golang
java
jvm
Java下CAS(Compare And Swap)并发操作测试
测试目的据我的了解,在高并发环境下,为了减少锁的开销(睡眠,线程上下文切换),采用的是
无锁
编程(lock-freeorlocklessprogramming),而
无锁
编程的基础是CAS操作,那么CAS操作在高并发下的效果怎样
lqp276
·
2023-10-16 16:33
测试代码
java
并发
线程
CAS操作
MacOS ventura跳过配置锁
配置锁顾名思义就是美国一些企业和公司向苹果工公司定制采购的机器,这些机器一般供应内部员工使用,这种机器和正常机没有什么区别,也是
无锁
三网机器,功能和正常机器一摸一样!2.配置锁能入手吗?
w白白白w
·
2023-10-15 22:35
macos
【Java并发】聊聊LongAdder应用场景及其原理
那么又没有一种高效的方式呢,就是使用
无锁
编程原子类,atomicInteger但是因为是使用CAS并且针对的是
qxlxi
·
2023-10-15 18:10
#
并发编程
java
开发语言
深入浅出DPDK学习笔记(5)——— 同步互斥机制
内核原子操作原子整数操作原子性与顺序性原子位操作DPDK原子操作实现和应用内存屏障API原子操作API读写锁Linux读写锁主要APIDPDK读写锁实现和应用自旋锁自旋锁的缺点Linux自旋锁APIDPDK自旋锁实现和应用
无锁
机制
高晓伟_Steven
·
2023-10-15 17:34
dpdk
dpdk
java中锁机制详解
乐观锁在Java中是通过使用
无锁
编程来实现,最常采用的是CAS算法,Java原子类中的递增操作就通过CAS自旋实现的。悲观锁:在获取数据时加锁,确保线程安全。
viankoo
·
2023-10-14 17:03
C++深度优化——
无锁
队列实现及测试
最近在研究
无锁
队列,从网上学习到了lock-free的定义,特此摘录如下:如果涉及到共享内存的多线程代码在多线程执行下不可能互相影响导致被hang住,不管OS如何调度线程,至少有一个线程在做有用的事,那么就是
腾昵猫
·
2023-10-14 15:42
c++
阿里面试官:“你有高并发经验吗?”
第一:
无锁
、偏向锁、轻量级锁、重量级锁有什么差别?第二:synchronized、volatile的CPU原语是如何实现的?第三:线程间通信,同机器进程间通信,跨机器进程间通信,各有什么
软件测试资料侠~
·
2023-10-14 11:10
Java
面试
java
编程语言
字节跳动
spring
LeetCode 2562. 找出数组的串联值【数组,相向双指针】1259
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-14 02:54
#
双指针
leetcode
算法
职场和发展
C# lock 自旋锁,互斥锁,混合锁,读写锁介绍
在多线程环境中,多个线程可能会同时访问同一个资源,为了避免访问发生冲突,可以根据访问的复杂程度采取不同的措施,原子操作适用于简单的单个操作,
无锁
算法适用于相对简单的一连串操作,而线程锁适用于复杂的一连串操作
HOLD ON!
·
2023-10-14 01:42
C#
个人学习记录
个人博客记录工作中学习中认为比较好的知识点一、博主掘金-AllenWu京东云技术博主推荐阮一峰的网络日志廖雪峰bugstack硬核技术二、系统、IO相关虚拟内存&I/O&零拷贝总结高速网络的未来:解析零拷贝Zero-Copy架构
无锁
编程
菜鸟1号ING
·
2023-10-11 06:04
redis
数据库
缓存
Java 多线程底层原理与实现
Java多线程底层原理与实现一、各种锁的概念1.乐观锁与悲观锁2.共享锁/独占锁3.可重入锁4.公平锁和非公平锁5.
无锁
、偏向锁、轻量级锁、重量级锁6.自旋锁7.互斥锁和读写锁二、线程的实现方式1.继承
JoeTwan
·
2023-10-11 03:10
Web后端
java
多线程
并发编程
MVCC底层实现原理
MVCC是用来解决读-写冲突的
无锁
并发控制,就是为事务分配单向增长的时间戳。
聪明不喝牛奶
·
2023-10-10 23:00
Java
Java面试知识点
java
开发语言
后端
卡贴机变
无锁
教程_有锁机变
无锁
教程 教你轻松设置去掉卡贴有锁机变
无锁
完美4G...
7月21日消息,最近有锁机一直用iccid“完美解锁”移动联通2G/3G/4G卡贴,信号稳定媲美
无锁
。但是唯一比较麻烦的就是需要加卡贴,而且不能乱换卡、拔卡。
weixin_39531992
·
2023-10-10 12:24
卡贴机变无锁教程
再也不怕面试官问MVCC原理了
它是一种用来解决读-写冲突的
无锁
并发控制,通俗的讲就是MVCC通过数据保存在undo日志中的历史版本,根据比较版本号来处理数据是否显示,显示哪一个版本,使得事务的读写、写读操作并发执行,从而提升系统性能实现原理
JeffreyTaiT
·
2023-10-10 11:16
环形缓冲RingBuffer和
无锁
环形缓冲环形缓冲区,也被称为循环缓冲区或者环形队列,是一种数据结构类型,它在内存中形成一个环形的存储空间。环形缓冲区的特点是其终点和起点是相连的,形成一个环状结构。这种数据结构在处理流数据和实现数据缓存等场景中具有广泛的应用。环形缓冲区的主要作用是存储和管理数据。它可以存储一定数量的数据,并且在数据存储满后,新的数据会覆盖最早的数据,从而实现了一种“先进先出”(FIFO)的数据管理方式。这种数据结
only_
·
2023-10-10 04:43
数据结构
并发控制之线程同步
多线程简述并发控制之线程同步并发控制之
无锁
编程上一篇多线程简述提到编写并发代码很棘手,可能出现以下两个问题:数据争用DataRace:一个线程修改数据时,另一个线程正在读取数据。
pro648
·
2023-10-09 08:22
Java并发编程:什么是CAS?这回总算知道了
无锁
的思想众所周知,Java中对并发控制的最常见方法就是锁,锁能保证同一时刻只能有一个线程访问临界区的资源,从而实现线程安全。然而,锁虽然有效,但采用的是一种悲观的策略。
哦00
·
2023-10-08 22:55
LeetCode 1277. 统计全为 1 的正方形子矩阵【动态规划】1613
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-08 17:57
动态规划
leetcode
矩阵
动态规划
LeetCode LCP 06. 拿硬币【贪心,数学】简单
由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有
无锁
题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。
memcpy0
·
2023-10-08 15:10
贪心
leetcode
linux
算法
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他