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
并发编程同步锁
【Java核心知识】JUC包相关知识
Synchronize与wait原理CAS和JUC原子类CAS原理`JUC`原子类`ABA`问题可见性和有序性为什么会有可见性参考链接显式锁Lock接口常用方法显式锁分类显式锁实现原理参考链接JUC包主要内容JUC包是与
并发编程
相关的包
爱幻想-hjyp
·
2023-09-04 00:18
#
Java核心知识
java
开发语言
study plan
String基础真正的Java内存模型Java双亲委派机制Java引用类型原理剖析JVM内存占用情况分析whc的GC文章G1收集器不可不说的Java锁事Java各种锁对比synchronized底层实现Java
并发编程
的艺术
whc2011
·
2023-09-03 23:15
《多线程编程实战指南》总结
Java并发和多线程编程推荐《Java
并发编程
实战》和《多线程编程实战指南》,前者是外国非常受欢迎的书籍的翻译本,后者是国人写的书,符合国人的思维模式。
imonkeyi
·
2023-09-03 23:32
java
多线程编程
volatile关键字如何保证内存可见性
volatile内存语义volatile在
并发编程
中很常见,但也容易被滥用,现在我们就进一步分析volatile关键字的语义。volatile是Java虚拟机提供的轻量级的同步机制。
xk_一步一步来
·
2023-09-03 22:38
面试知识点汇总
volatile关键字
创建2个线程并执行(STL/Windows/Linux)
C++
并发编程
入门目录STL写法#include#includeusingnamespacestd;voidthread_fun1(void){cout#includeusingnamespacestd
C++程序员Carea
·
2023-09-03 22:57
c++
windows
linux
并发编程
篇
并发编程
篇线程基础线程和进程的区别面试官:说一下线程和进程的区别?
丿Mars灬龙族-
·
2023-09-03 21:00
面试
java
开发语言
java ReentrantLock 锁 await、signal的用法
背景在
并发编程
中,为了保证线程的原子执行,需要使用锁,jvm内可以使用synchronized和ReentrantLock,如果是集群部署,我们可以使用Redis分布式锁其他的锁后面再介绍。
SteveGao2013
·
2023-09-03 21:59
高并发
java
java
开发语言
java 中用 ReentrantReadWriteLock 解决HashMap() 线程安全问题
在
并发编程
中,当多个线程同时操作一个变量时,容易出现线程安全的问题,我们可以使用各种锁来解决线程安全问题,比如:ConcurrentHashMap在底层使用了synchronized解决HashMap(
SteveGao2013
·
2023-09-03 21:27
多线程
java
java
C++多线程--线程安全的单例模式
本文主要讲解在C++
并发编程
中如何实现线程安全的单例模式。
qls315
·
2023-09-03 17:57
C++多线程
c++
多线程
thread
linux
并发编程
—创建多线程的三种方式
#!/usr/local/bin/python3"""多线程程序如果没有竞争资源的场景那么通常会比较简单临界资源-被多个线程竞争的资源当多个线程竞争临界资源的时候如果缺乏必要的保护措施就会导致数据错乱"""importtimeimportthreadingfromconcurrent.futuresimportThreadPoolExecutorclassAccount(object):"""银行
她即我命
·
2023-09-03 15:43
java
并发编程
AbstractQueuedSynchronizer(AQS)详解二
java
并发编程
系列文章目录2ConditionObject结构是一个双向
java爬坑中
·
2023-09-03 14:18
java并发编程
java
java
并发编程
ReentrantLock详解
文章目录1概要2相关文章3例子4方法详解4.1lock()4.2unlock()4.3tryLock()4.4其他公平锁总结1概要ReentrantLock通过实现Lock接口的行为,提供锁机制。但是实现委托给了内部的Sync,SyncextendsAbstractQueuedSynchronizer,继承了AQS的能力。此时还提供两个具体的实现,公平锁和非公平锁。首先如果对AQS不了解,请看ja
java爬坑中
·
2023-09-03 14:18
java并发编程
java
java
并发编程
系列文章目录
系列文章目录第一篇java
并发编程
AbstractQueuedSynchronizer(AQS)详解一第二篇java
并发编程
AbstractQueuedSynchronizer(AQS)详解二第三篇java
java爬坑中
·
2023-09-03 14:18
java并发编程
java
java
并发编程
ArrayBlockingQueue详解
文章目录前言1ArrayBlockingQueue是什么2核心属性详解3核心方法详解3.1add(Ee)3.2offer(Ee)3.3put(Ee)3.4take()3.5poll()3.6peek()3.7size()3.8remove(Objecto)3.9contains(Objecto)3.10drainTo(Collectionc,intmaxElements)4总结前言学习ArrayB
java爬坑中
·
2023-09-03 14:18
java并发编程
java
java
并发编程
AbstractQueuedSynchronizer(AQS)详解一
文章目录1概要2技术名词解释3AQS核心方法原理3.1acquire(intarg)3.2release(intarg)3.3acquireInterruptibly(intarg)3.3acquireShared(intarg)3.4doReleaseShared()3.5releaseShared(intarg)3.6acquireSharedInterruptibly3.7hasQueued
java爬坑中
·
2023-09-03 14:47
java并发编程
java
java
并发编程
ReentrantReadWriteLock详解
文章目录1ReentrantReadWriteLock是什么?2相关文章3示例2ReentrantReadWriteLock结构3写锁WriteLock实现原理3.1WriteLock数据结构4读锁ReadLock实现原理4.1ReadLock数据结构5ReentrantReadWriteLock.Sync实现原理5.1Sync数据结构5.2ReadLock详解5.2.1lock()5.2.2un
java爬坑中
·
2023-09-03 14:15
java并发编程
java
java 活锁 线程饿死,JAVA
并发编程
(四)线程死锁、饥饿、活锁
JAVA
并发编程
(四)线程死锁线程死锁什么是线程死锁呢?为什么会线程死锁呢?如何避免线程死锁?什么是饥饿呢?什么是活锁呢?线程死锁什么是线程死锁呢?
闻人奚
·
2023-09-03 14:03
java
活锁
线程饿死
第一章_线程基础知识
先拜拜大神DougLea(道格.利)java.util.concurrent在
并发编程
中使用的工具包为什么学习并用好多线程极其重要硬件方面摩尔定律失效摩尔定律:它是由英特尔创始人之一GordonMoore
烟雨忆南唐
·
2023-09-03 14:31
#
JUC
java
开发语言
Java无锁并发工具类Unsafe.compareAndSwapLong方法
compareAndSwapLong方法是一个原子操作,通常用于
并发编程
中的无锁算法。它的作用是以原子方式比较并交换某个对象的一个long类型的字段。
翁正存
·
2023-09-03 14:58
Java基础
java
开发语言
jvm
面试题汇总
(操作系统)2.物理地址和虚拟地址(操作系统)3.Synchronize给静态和非静态方法的区别(JUC
并发编程
)4.匿名内部类为什么可以访问外部类的对象(Jav
studyForMokey
·
2023-09-03 13:51
八股文
java
开发语言
单独创建一个线程并执行
C++
并发编程
入门目录STL写法#include#includeusingnamespacestd;voidthread_fun(void){cout#includeusingnamespacestd;
C++程序员Carea
·
2023-09-03 11:09
数据结构
c++
开发语言
只有一个线程的程序(main函数)
C++
并发编程
入门目录只有一个线程的程序就是main函数所在的线程。这个线程无需我们手动创建,main函数就是这个线程的执行体。运行main函数,就是执行只有一个线程的程序。
C++程序员Carea
·
2023-09-03 11:39
c++
算法
开发语言
并发编程
(二) —— 线程的并发工具类
Fork/Join体现了分而治之,大问题分割为相同的小问题,小问题之间无关联。动态规划,分割为相同的小问题,小问题之间是有关联的工作密取:因为划分的子任务的计算时间不一样,先完成的线程会去后完成的线程中提取任务执行publicclassMain{publicstaticvoidmain(String[]args)throwsException{//创建2000个随机数组成的数组:long[]arr
Boahui
·
2023-09-03 09:31
redis的延迟双删策略总结
其实不管哪种方案,都避免不了Redis存在脏数据的问题,只能减轻这个问题,要想彻底解决,得要用到
同步锁
和对应的业务逻辑层面解决。2、为什么要进行延迟双删?
Hellboy_M
·
2023-09-03 08:34
DB
redis
数据库
kafka 3.5 kafka服务端接收生产者发送的数据源码
分区Leader三、在数据写入分区Leader之前,先获一些锁1、首先获得leaderIsrUpdateLock的读锁,得到Leader日志读取权限,做一些验证2、在把日志写入分区Leader之前先获得
同步锁
胖墩的IT
·
2023-09-03 06:11
#
kafka
kafka
JUC
并发编程
---Lock锁
文章目录什么是Locksynchronized加锁和Lock加锁代码示例synchronized使用Lock加锁公平锁和非公平锁公平锁:非公平锁:Lock和Synchronized的区别synchronized版的生产者和消费者Lock版的生产者和消费者生产者和消费者出现的问题Condition精准通知和唤醒线程什么是Lock官网介绍:虽然synchronized方法和语句的范围机制使得使用监视器
谷艳爽faye
·
2023-09-03 03:24
java
算法
开发语言
C++
并发编程
:使用C++实现线程安全的栈
C++
并发编程
:使用C++实现线程安全的栈引言在多线程编程中,数据结构的线程安全性是至关重要的。本文将详细介绍如何使用C++20标准库中的一些新特性来实现一个线程安全的栈。什么是线程安全的栈?
繁星意未平
·
2023-09-03 01:13
c++
安全
开发语言
Scala的队列与并行集合
Scala的队列与并行集合在Scala中,队列和并行集合是常用的数据结构和
并发编程
工具。1.队列(Queue)Scala提供了可变和不可变两种队列。
岁月的眸
·
2023-09-03 01:08
#
Scala
大数据
scala
开发语言
C++多线程
并发编程
入门(目录)
C++自学精简实践教程目录(必读)一、教程目标1普及多线程基本概念2让学生亲自接触,直观感受多线程的特点。3由浅入深的亲历多线程的问题,亲自解决多线程的问题。4掌握基本的并发开发方法。5具备解决工作中大部分并发问题的能力。二、教程特点1代码量少,容易自己实际操作。2每篇文章同时给出STL/Windows/Linux三种对比实现。保证让你看懂公司代码。3作者天天在各种多线程产品代码里穿梭,只给最实用
C++程序员Carea
·
2023-09-03 00:37
c++
开发语言
多线程
从当代互联网发展趋势来说:现在的系统动不动就要求百万级甚至千万级的并发量,而多线程
并发编程
正是开发高并发系统的基础,利用好多线程机制可以大大提高系统整体的并发能力以及性能。再深入到计
·
2023-09-02 23:21
java
java
并发编程
-原子类
原子类原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何线程上下文切换。原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割而只执行其中的一部分,将整个操作视作一个整体是原子性的核心特征。而java.util.concurrent.atomic下的类,就是具有原子性的类,可以原子性地执行添加、递增、递减等操作。比如之前多线程
wangpeng123
·
2023-09-02 21:44
并发编程
之:AQS源码解析
在Java
并发编程
中,经常会用到锁,除了Synchronized这个JDK关键字以外,还有Lock接口下面的各种锁实现,如重入锁ReentrantLock,还有读写锁ReadWriteLock等,他们在实现锁的过程中都是依赖与
小黑说Java
·
2023-09-02 20:57
【系统编程】线程安全(POSIX信号量、互斥锁、读写锁等)
作者水平很有限,如果发现错误,请在评论区指正,感谢在
并发编程
中,线程安全是一个重要的问题。多个线程并发访问共享数据时,如果没有正确的同步机制,可能会导致数据的不一致,从而引发错误
祐言QAQ
·
2023-09-02 19:29
系统编程
安全
linux
网络协议
运维
「BATJ面试系列」
并发编程
之happens-before详解
今天开始写个系列从JDK5开始,JMM使用happens-before的概念来阐述多线程之间的内存可见性。在JMM中,如果一个操作执行的结果需要对另一个操作可见,那么这两个操作之间必须存在happens-before关系。happens-before和JMM关系如下图:image.pnghappens-before原则非常重要,它是判断数据是否存在竞争、线程是否安全的主要依据,依靠这个原则,我们解
Java小工
·
2023-09-02 18:02
---
并发编程
篇
前言
并发编程
是IT人面试必备的八股文之一,项目开发中也常遇到高并发的场景,程序员需要考虑多线程编程、资源竞争、锁机制、分布式计算等多个方面的知识和技术。
·
2023-09-02 18:14
后端
---
并发编程
篇
前言
并发编程
是IT人面试必备的八股文之一,项目开发中也常遇到高并发的场景,程序员需要考虑多线程编程、资源竞争、锁机制、分布式计算等多个方面的知识和技术。
·
2023-09-02 18:43
后端
go channel 基础(如何优雅地关闭 channel)
前言想必听说过go的,应该都知道go的最大的特性goroutine
并发编程
,而说到
并发编程
,使用channel进行数据传输是go中的必修课。
Grassto
·
2023-09-02 16:56
go
golang
开发语言
后端
channel
并发
[笔记][Java7
并发编程
实战手册]3.5 在集合点的同步CyclicBarrier循环barrier
[笔记][Java7
并发编程
实战手册]系列目录CyclicBarrier详细原理解说,可先查看别人的博客:http://www.cnblogs.com/skywang12345/p/3533995.html
代码有毒 mrcode
·
2023-09-02 16:43
Java7并发编程
java
编程
并发
java
7
barrier
「
并发编程
」摩尔定律失效“带来”并行编程
下面贴上一张图来解释下这两个概念:「
并发编程
」摩尔定律失效“带来”并行编程上图中的咖啡就可
can_4999
·
2023-09-02 13:29
Java:synchronized关键字引出的多种锁
image前言Java中的synchronized关键字可以在多线程环境下用来作为线程安全的
同步锁
。
EricTao2
·
2023-09-02 13:03
Flink中RPC实现原理简介
是使用Scala语言编写的库,基于Actor模型提供一个用于构建可扩展、弹性、快速响应的系统;并被应用到Flink中,基于Akka实现了集群组件之间的RPC通信框架Actor模型Actor模型是一个通用的
并发编程
模型
过悟
·
2023-09-02 07:37
flink
rpc
并发编程
-synchronise系列
并发编程
-synchronise系列前言synchronise一种常见的解决并发问题最常用的方式,面试对于synchronise考察主要在于其原理实现,如何使用等方面,以及和lock对比等问题,我们一起看来下下面几个问题
程序员fly
·
2023-09-02 02:30
并发
java
开发语言
后端
SpringBoot - 优雅的实现【流控】
限流算法我们先简单捋一捋限流算法
并发编程
-25高并发处理手段之消息队列思路+应用拆分思路+应用限流思路深入理解分布式技术-限流计数器限流漏桶算法把水比作是请求,漏桶比作是
小小工匠
·
2023-09-02 02:29
【Spring
Boot2.X】
spring
boot
接口限流
流控
每日一博 - 漫谈流控小妙招
文章目录Pre概述实现方式固定窗口算法(计数器法)定义实现滑动窗口算法定义实现漏桶算法定义实现令牌桶算法定义实现每秒产生5个令牌应对突发流量平滑预热网关限流流量整形中间件限流Pre深入理解分布式技术-限流
并发编程
小小工匠
·
2023-09-02 02:57
【每日一博】
流控
流量整形
限流
一些python的高级方法(闭包、装饰器、多线程详解)
目录闭包装饰器普通用法多层装饰器设计模式单例模式工厂模式Python
并发编程
CPU密集型任务和IO密集型任务多线程、多进程、多协程的对比方法选择多线程基础使用得到当前的线程守护线程线程阻塞join方法线程锁
独憩
·
2023-09-02 02:43
Python天下第一
python
开发语言
Android volatile 原理。
在《Java
并发编程
:核心理论》一文中,我们已经提到可见性、有序性及原子性问题,通常情况下我们可以通过Synchronized关键字来解决这些个问题,不过如果对Synchonized原理有了解的话,应该知道
ZSGZ_AD
·
2023-09-01 20:03
java
并发编程
(二)-- 用户线程和内核线程
什么是线程现代操作系统在运行一个程序时,会为其创建一个进程。例如,启动一个Java程序,操作系统就会创建一个Java进程。现代操作系统调度CPU的最小单元是线程,也叫轻量级进程(LightWeightProcess),在一个进程里可以创建多个线程,这些线程都拥有各自的计数器、堆栈和局部变量等属性,并且能够访问共享的内存变量。处理器在这些线程上高速切换,让使用者感觉到这些线程在同时执行。线程的实现可
胡志强
·
2023-09-01 16:22
Golang
并发编程
Golang
并发编程
进程和线程及协程并行和并发golang创建一个协程golang停止一个协程golang协程休眠Golang协程状态golang协程安全golang共享变量和临界区golang协程优先级
hixiaoyang
·
2023-09-01 11:10
golang
Scala
并发编程
的react、loop方法详解
Scala
并发编程
的react、loop方法详解在Scala中编写并发应用程序,我们通常会使用Actor和ActorSystem来创建和管理Actor,而react和loop方法则是Actor的两个重要方法
岁月的眸
·
2023-09-01 10:47
scala
并发编程
的故事——共享模型之内存
共享模型之内存文章目录共享模型之内存一、JVM内存抽象模型二、可见性三、指令重排序一、JVM内存抽象模型主要就是把cpu下面的缓存、内存、磁盘等抽象成主存和工作内存体现在可见性原子性有序性二、可见性出现的问题t线程如果频繁读取一个静态变量,那么JIT编译器会把它存入到线程的缓存,那么就算主线程修改了主存中的静态变量也没有任何作用,因为t线程读取的是缓存里面的。所以程序判断仍然是错误无法停止。@Sl
菜鸡小张.
·
2023-09-01 08:22
并发编程的故事
java
上一页
50
51
52
53
54
55
56
57
下一页
按字母分类:
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
其他