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
并发编程同步锁
GO语言网络编程(
并发编程
)原子操作(atomic包)
GO语言网络编程(
并发编程
)原子操作(atomic包)1、原子操作(atomic包)1.1.1.原子操作代码中的加锁操作因为涉及内核态的上下文切换会比较耗时、代价比较高。
lucky九年
·
2023-09-11 16:46
网络
golang
服务器
GO语言网络编程(
并发编程
)Sync
GO语言网络编程(
并发编程
)Sync1、Sync1.1.1.sync.WaitGroup在代码中生硬的使用time.Sleep肯定是不合适的,Go语言中可以使用sync.WaitGroup来实现并发任务的同步
lucky九年
·
2023-09-11 16:16
golang
开发语言
后端
【JUC】一、Java
并发编程
基础知识
JUC基础前置知识进程与线程进程程序由指令和数据组成,程序要执行就必须将指令加载到CPU,将数据加载至内存。同时在程序的运行过程中还需要用到磁盘、网络等设备,进程就是用来加载指令、管理内存、管理IO的。程序被执行时,程序会将代码加载至内存,这时就开启了一个进程进程可以视为是程序的一个实例。大部分程序可以同时运行多个实例(记事本、画图、浏览器等),但也有一部分程序只能运行一个实例(安全卫士、网易云音
清河__
·
2023-09-11 14:01
JUC
java
开发语言
探索 Java 线程的创建
前言在
并发编程
中我们为啥一般选用创建多个线程去处理任务而不是创建多个进程呢?这是因为线程之间切换的开销小,适用于一些要求同时进行并且又要共享某些变量的并发操作。
·
2023-09-11 11:16
java后端
go channel实践与源码探索(初始化、发送消息、接收消息、关闭)
文章目录概要一、
并发编程
1.1、Actor模型1.2、CSP模型二、GoChannel实践三、源码分析3.1、初始化3.2、发送消息3.3、接收消息3.4、关闭通道总结概要通道(Channel)是Go语言提供的协程之间通信与同步的方式
pigfu
·
2023-09-11 10:45
Go系列
golang
go
channel
go
channel源码分析
go
channel使用总结
面试(乐观锁和悲观锁)
一、锁乐观锁(OptimisticLocking)和悲观锁(PessimisticLocking)是在
并发编程
中常用的两种锁机制,用于解决多线程并发访问共享资源时的数据一致性问题。
方璧
·
2023-09-11 06:14
面试
java
职场和发展
并发编程
-Hadoop之edits_log批量刷磁盘
优化思路概览工业级的大规模分布式系统,都不会采取特别简单的代码和模式,那样性能很低下。这里都有大量的并发优化、网络IO优化、内存优化、磁盘读写优化的架构设计、生产方案在里面并发优化:rocketmq消费端线程池并发消费msg网络IO优化:hadoop的大文件上传+内存缓冲+package数据包机制+内存队列异步发送机制内存优化:rocketmq每次预热1G内存空间并进行内存锁定,防止内存空间被置换
每天的每一天
·
2023-09-11 06:32
并发编程
后端
实际场景中的多线程
并发编程
案例
目录使用多线程的意义:CountDownLatch案例一:多线程同步发起并发请求案例二:rocketmq内,每个broker将自己注册到所有的nameserver时案例三:利用异步线程实现同步请求CompletableFuture应用一:并行调用线程池案例一:开10个线程,同时往单表中插入案例二:做简易定时任务线程同步版块案例一:wait/notify方法应用案例二:读写锁的使用使用多线程的意义:
每天的每一天
·
2023-09-11 06:02
java多线程
java
开发语言
后端
死锁
一、什么是死锁
并发编程
的本质是将串行执行的代码编程并行执行。
并发编程
的目的是为了加快程序的运行速度,但是如果使用不当,不仅不会带来速度的提升,反而变得更慢,甚至造成程序出现异常。
守住阳光
·
2023-09-11 04:38
Juc全网最全学习笔记【遇见狂神说】
B站学习视频遇见狂神说《JUC
并发编程
最新版通俗易懂》1、什么是JUC源码+官方文档面试高频问!
派 大 星.
·
2023-09-11 03:28
java
【Java并发】聊聊ReentrantReadWriteLock锁降级和StampedLock邮戳锁
在
并发编程
领域,有多线程进行提升整体性能,但是却引入了共享数据安全性问题。基本就是无锁编程下的单线程操作,有互斥
同步锁
操作,但是性能不高,并且同一时刻只有一个线程可以操作资源类。但是对于大多数常见下,
qxlxi
·
2023-09-11 02:55
#
并发编程
java
开发语言
java
并发编程
LinkedBlockingQueue详解
文章目录前言1LinkedBlockingQueue是什么2核心属性详解3核心方法详解3.1offer(Ee)3.2put(Ee)3.3take()3.4poll()3.5peek()3.6remove(Objecto)3.7drainTo(Collectionc,intmaxElements)总结前言学习LinkedBlockingQueue需要掌握ReentrantLock原理,或者了解其使用
java爬坑中
·
2023-09-10 21:58
java并发编程
java
java
并发编程
LinkedBlockingDeque详解
文章目录1LinkedBlockingDeque是什么2核心属性详解3核心方法详解3.1addFirst(Ee)3.2offerFirst(Ee)3.3putFirst(Ee)3.4removeFirst()3.5pollFirst()3.6takeFirst()3.7其他4总结1LinkedBlockingDeque是什么首先queue是一种数据结构,一个集合中,先进后出,有两种实现的方式,数组
java爬坑中
·
2023-09-10 21:58
java并发编程
java
java
并发编程
PriorityBlockingQueue详解
文章目录1PriorityBlockingQueue是什么2核心属性详解3核心方法详解3.1offer(Ee)3.2poll()3.3take()3.4peek()4总结1PriorityBlockingQueue是什么PriorityBlockingQueue类上的注释描述:一个无界阻塞队列,它使用与类PriorityQueue相同的排序规则,并提供阻塞检索操作。PriorityQueue又是什
java爬坑中
·
2023-09-10 21:58
java并发编程
java
java
并发编程
ConcurrentLinkedQueue详解
文章目录1ConcurrentLinkedQueue是什么2核心属性详解3核心方法详解3.1add(Ee)3.2offer(Ee)3.3poll()3.4size()3.5并发情况分析4总结1ConcurrentLinkedQueue是什么ConcurrentLinkedQueue是一个无界的并发队列,和LinkedBlockingQueue相比,它是通过完全的cas实现的,是非阻塞的。Linke
java爬坑中
·
2023-09-10 21:57
java并发编程
java
Java
并发编程
-认识Java里的线程
上一篇我们已经了解进程和线程的相关概念CPU线程调度的基本原理,这回我们来看看java是怎么支持多线程的。任何一个程序都必须要创建线程,特别是Java。不管任何程序都必须启动一个main函数的主线程;JavaWeb开发里面的定时任务、定时器、JSP和Servlet、异步消息处理机制,远程访问接口RM等都离不开线程。文章目录1.Java程序天生就是多线程的2.创建和启动线程3.带有返回值的线程4.线
千月落
·
2023-09-10 20:55
Java
多线程
thread
并发编程
Java并发(三):Java内存模型
一.基础
并发编程
中的两个关键问题:线程间如何通信和线程间如何同步。
Jorvi
·
2023-09-10 16:59
【数据结构-队列】阻塞队列
推荐:kuan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术点,如集合,jvm,
并发编程
redis,kafka,Spring,微服务,Netty等常用开发工具系列
檀越剑指大厂
·
2023-09-10 14:25
s6
算法与数据结构
数据结构
【Facebook 工程师内部分享】如何快速成为 Python 高手?
并发编程
中的fu
Sim1480
·
2023-09-10 13:10
编程语言
java
python
人工智能
大数据
多线程&
并发编程
知识点汇总
引论(思考问题)–多线程为什么快&线程数量越多越好?多线程如何设置参考线程数量合理?多线程安全通信有哪些锁?高并发容器如何选择使用?线程池如何选择和设置值?一.多线程并发介绍1.1线程的历史线程的历史是一部对于CPU性能压榨的历史:CPU的执行时间远远小于数据准备时间1.单进程人工切换-纸带机2.多进程批处理-多个任务批量执行3.多进程并行处理-程序写在不同的内存位置上来回切换4.多线程-一个程序
诸葛小猿
·
2023-09-10 09:55
并发编程
java
多线程
并发编程
多线程大汇总
如果你觉得此文很简单,那推荐你看看Java并发包的的线程池(Java
并发编程
与技术内幕:线程池深入理解),或者看这个专栏:Java
并发编程
与技术内幕。你将会对Java里头的高并发场景下的线程
雪飞静
·
2023-09-10 09:52
【深入java并发编程吧】
多线程
【postgresql 基础入门】创建数据库的方法,存储位置,决定自己的数据的访问用户和范围
创建数据库专栏内容:postgresql内核源码分析手写数据库toadb
并发编程
开源贡献:toadb开源库个人主页:我的主页管理社区:开源数据库座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物.系列文章入门准备
韩楚风
·
2023-09-10 05:19
postgresql
#
postgresql使用
数据库
postgresql
大数据
sql
以可视化方式解释 Go 并发 - 通道
在
并发编程
中,许多编程语言采用共享内存/状态模型。然而,Go通过实现通信顺序进程(CSP)区别于众多语言。
小技术君
·
2023-09-10 04:01
golang
开发语言
后端
C++
并发编程
(四)同步与异步
目录线程等待1.设置标志2.使用C++标准库工具(优先使用)线程安全的队列等待一次性发生的事件异步方式启动任务future实例和任务的关联多任务异步调度线程间异步求值future中的异常多个线程同时等待指定等待时限C++中时间的表示方式时长类时间点接收超时时限的函数同步操作简化代码CSP消息传递进行同步后续风格并发后续函数的连锁调用等待多个future线程闩和线程卡基本线程闩线程卡总结在并发操作中
Cvincent976
·
2023-09-10 02:00
C++并发
c++
了解 Java
并发编程
中的 volatile 关键字
@作者:一恍过去@主页:https://blog.csdn.net/zhuocailing3390@社区:Java技术栈交流@主题:了解Java
并发编程
中的volatile关键字⏱️@创作时间:2023
一恍过去
·
2023-09-10 01:36
java
开发语言
jvm
Python之
并发编程
介绍
一、
并发编程
介绍1.1、串行、并行与并发的区别串行(serial):一个CPU上,按顺序完成多个任务并行(parallelism):指的是任务数小于等于cpu核数,即任务真的是一起执行的并发(concurrency
菜鸟之编程
·
2023-09-10 00:29
Python
python
开发语言
聊聊并发(一)深入分析Volatile的实现原理
引言在多线程
并发编程
中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。
要懂得舍得
·
2023-09-09 21:09
javaEE
并发
(九)深入
并发编程
之并发容器:阻塞队列、写时复制容器、锁分段容器原理详谈
引言相信大家在学习JavaSE时都曾接触过容器这一内容,一般Java中的容器可分为四类:Map、List、Queue以及Set容器,而在使用过程中,对于ArrayList、HashMap等这类容器都是经常使用的,但问题在于这些容器在并发环境下都会存在线程安全问题。所以当我们在多线程环境下使用容器时,一般会使用Vector、HashTable来代替之前的ArrayList、HashMap,或者通过如
竹子爱熊猫
·
2023-09-09 21:06
并发编程
容器
多线程
高并发编程
java
并发编程
爬虫_开发一款开源爬虫框架系列(三):聊聊并发包中的队列(Queue)...
说到队列尤其是阻塞队列,不得不说jdk的并发包(java.util.concurrent)中的相关数据结构,今天我们就来对java(JDK1.7)中的队列做一个总结。1、Queue队列接口,定义了队列基本的接口方法前两个方法是往队列塞数据,在队列空间不足的情况下add会抛出异常,而offer会返回false。poll和peek的区别是后者不会从队列中移除元素。2、BlockingQueue、Blo
weixin_34701481
·
2023-09-09 21:35
java并发编程爬虫
Java
并发编程
:阻塞队列
在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。在前面我们接触的队列都是非阻塞队列,比如PriorityQueue、LinkedList(LinkedList是双向链表,它实现了Dequeu
小兮雯学Java
·
2023-09-09 21:04
java
开发语言
后端
程序人生
经验分享
并发编程
17-同步容器与并发容器和阻塞队列
0.总述0.1同步容器Vector线程安全ArrayList线程不安全Collections.synchronizedList(ArrayList)线程安全Hashtable线程安全HashMap线程不安全Collections.synchronizedMap(HashMap)线程安全0.2并发容器CopyOnWriteArrayList使用起来和ArrayList一样.每步操作都需要copy,所
bobshute
·
2023-09-09 21:04
J2SE
总结
多线程
并发编程
《Java 后端面试经》数据库篇
《Java后端面试经》专栏文章索引:《Java后端面试经》Java基础篇《Java后端面试经》JavaEE篇《Java后端面试经》数据库篇《Java后端面试经》多线程与
并发编程
篇《Java后端面试经》JVM
ReadThroughLife
·
2023-09-09 21:46
Java
#
Java
后端面试经
数据库
java
后端
数据库
[java
并发编程
]基于信号量semaphore实现限流器
[TOC]一、什么是信号量“信号量”在编程术语中使用单词semaphore,那什么是“信号量”?信号量就好比你家厨房入口架子上摆了三把锅。如果你的孩子热奶拿走一把,你的老婆热汤拿走一把,你的妈妈做菜拿走一把,你想煮面条就没有锅了。当你看到这种情况,你就不会进入厨房了,你处于等待状态。也就说厨房按照“锅的数量”作为信号量,只能容纳三个人(线程)。当你的老婆热完汤之后,把锅重新放回架子上,你就可以去获
字母哥课堂
·
2023-09-09 18:08
【
并发编程
八股】进程、线程、
并发编程
三大特性
目录进程与线程的概念?串行、并行、并发的概念?同步异步、阻塞非阻塞的概念?线程的创建的方式?继承Thread类,重写run方法实现Runnable接口,重写run方法实现Callable,重写call方法,配合FutureTask基于线程池构建线程匿名内部类和lambda表达式方式总结:追其底层,只有一种,实现Runnble线程的状态有哪几种,Java中线程的状态有哪几种?线程的常用方法有哪些,具
Koma_zhe
·
2023-09-09 17:55
Java相关
#
面试八股
#
Java语法及相关知识
java
jvm
算法
GO语言网络编程(
并发编程
)runtime包
GO语言网络编程(
并发编程
)runtime包1.runtime包1.1.1.runtime.Gosched()让出CPU时间片,重新等待安排任务(大概意思就是本来计划的好好的周末出去烧烤,但是你妈让你去相亲
lucky九年
·
2023-09-09 16:00
golang
开发语言
后端
操作系统之线程和进程
文章目录目录文章目录前言二、进程和线程1.进程2.线程3.进程的管理3.1PCB中的一些属性3.2并发和并行3.3进程的调度3.4内存管理3.5进程间的通信3.6
并发编程
4.进程与线程的区别前言本文主要介绍操作系统相关内容
苏黎世卡
·
2023-09-09 15:58
java
操作系统
JUC编程中锁引发的“见解”
3.1JMM内存模型3.2缓存一致性问题3.3处理器优化和指令重排序3.4共享内存问题4、分布式锁的使用4.1为什么
并发编程
一般会使用分布式锁,
厌世小晨宇yu.
·
2023-09-09 14:48
JUC编程
分布式
java
JUC
并发编程
之共享问题学习
目录临界区synchronized解决局部变量是否线程安全线程安全分析MonitorJava对象头Monitor概念Monitor工作原理轻量级锁加锁过程解锁过程锁膨胀自旋优化自旋成功自旋失败偏向锁对比轻量级锁撤销偏向状态批量重偏向waitsleep与wait的区别同步模式之保护性暂停join原理异步模式之生产者/消费者park&&unparkpark原理线程状态转换再次学习多把锁死锁活锁饥饿Re
夸父号
·
2023-09-09 09:46
JUC
java
【备战秋招】2022年Java后端面试题,查缺补漏,啃完16套专题技术栈
前言小编分享的这份2022年Java秋招备战面试题总计有1000多道面试题,包含了MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Java
并发编程
「已注销」
·
2023-09-09 08:21
java
面试
开发语言
GO语言网络编程(
并发编程
)并发介绍,Goroutine
GO语言网络编程(
并发编程
)并发介绍,Goroutine1、并发介绍进程和线程A.进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。
lucky九年
·
2023-09-09 05:26
GO
golang
服务器
开发语言
Go语言网络编程(socket编程)Goroutine
Go语言网络编程(socket编程)Goroutine在java/c++中我们要实现
并发编程
的时候,我们通常需要自己维护一个线程池,并且需要自己去包装一个又一个的任务,同时需要自己去调度线程执行任务并维护上下文切换
lucky九年
·
2023-09-09 05:26
GO
golang
开发语言
后端
Python
并发编程
实战,用多线程、多进程、多协程加速程序运行
文章目录1.并发&并行、同步&异步1.1并发&并行并发Concurrency并行Parallelism1.2同步&异步同步Synchronous异步Asynchronous2.CPU密集型计算&IO密集型计算2.1CPU密集型(CPU-bound)2.2IO密集型(I/O-bound)3.单线程编程&多线程编程3.1(单线程)异步编程AsynchronousProgramming3.2多线程编程M
Jenrey
·
2023-09-09 02:06
Python
python
asyncio
await
多线程
多进程
协程
multiprocessing
Java
并发编程
AQS
AQSAQS是多线程同步器,它是J.U.C包中多个组件的底层实现,如Lock、CountDownLatch、Semaphore等都用到了AQS.锁机制从本质上来说,AQS提供了两种锁机制,分别是排它锁,和共享锁。排他锁排它锁,就是存在多线程竞争同一共享资源时,同一时刻只允许一个线程访问该共享资源,也就是多个线程中只能有一个线程获得锁资源,比如Lock中的ReentrantLock重入锁实现就是用到
无语堵上西楼
·
2023-09-09 00:23
java面试题
java
开发语言
jvm
并发编程
7——单例模式、call_once
目录一、单例设计模式&m_instance0x00007ff79f52f340{Cpp.exe!MyCAS*MyCAS::m_instance}{0x000001a2aee80850{...}}MyCAS**&MyCAS::m_instance0x00007ff79f52f340{Cpp.exe!MyCAS*MyCAS::m_instance}{0x0000000000008123{...}}My
StevenHD
·
2023-09-08 23:58
【postgresql 基础入门】基础架构和命名空间层次,查看数据库对象再也不迷路
postgresql基础架构专栏内容:postgresql内核源码分析手写数据库toadb
并发编程
开源贡献:toadb开源库个人主页:我的主页管理社区:开源数据库座右铭:天行健,君子以自强不息;地势坤,
韩楚风
·
2023-09-08 22:40
postgresql
#
postgresql使用
数据库
postgresql
linux
sql
database
数据库开发
Java
并发编程
面试题
基础知识
并发编程
的优缺点为什么要使用
并发编程
(
并发编程
的优点)充分利用多核CPU的计算能力:通过
并发编程
的形式可以将多核CPU的计算能力发挥到极致,性能得到提升方便进行业务拆分,提升系统并发能力和性能:
小怪兽打葫芦娃
·
2023-09-08 18:00
JAVA面试-基础篇
java
面试
jvm
深入理解CAS算法原理
.*,其下面的类使用CAS算法实现了区别于synchronouse
同步锁
的一种乐观锁。JDK5之前Java语言是靠synchronized关键字保证同步的,这是一种独占锁,也是是悲观锁。
chen_chen_chen_
·
2023-09-08 16:42
同一个类中的2个方法都加了
同步锁
,多个线程能通知访问同一个类中两个方法么
这个问题需要考虑到Lock与synchronized两种实现锁的不同情形。因为这种情况下使用Lock和synchronized会有截然不同的结果。Lock可以让等待锁的线程响应中断,Lock获取锁使用Lock可以,但使用synchronized不行publicclassqq{privateintcount=0;privateLocklock=newReentrantLock();//设置lock锁
老奶猹
·
2023-09-08 16:01
go语言基本操作---六
并发编程
并行:指在同一时刻,有多条指令在多个处理器上同时执行。
小乞丐程序员
·
2023-09-08 15:13
golang
开发语言
后端
Atomic变量
1Atomic原子操作在Java5.0提供了java.util.concurrent(简称JUC)包,在此包中增加了在
并发编程
中很常用的工具类Java从JDK1.5开始提供了java.util.concurrent.atomic
zui初的梦想
·
2023-09-08 13:00
Python基础到进阶
python
开发语言
上一页
47
48
49
50
51
52
53
54
下一页
按字母分类:
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
其他