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
高并发编程
1.对《Java
高并发编程
详解:多线程与架构设计》书做一个总结(第一篇)
1.问题分析工具jconsolejstackjstatjvisualvmjProfiler前4个工具是在jdk的bin目录下的,最后一个是一个收费的工具。还有一个class字节码反编译命令:javap-cclass文件名2.线程生命周期的状态new:线程的创建。Runnable:可运行状态,就是线程调用了start方法。Blocked:阻塞状态,线程调用start方法后,但是还没获取到锁对象,所以
在路上_蜗牛
·
2020-06-25 08:15
07_书籍总结
Java的
高并发编程
系列(五)reentrantlock替换synchronized
java
高并发编程
主要有下面三个组成:1.同步器synchronized2.同步容器3.线程池:threadPool、executort本例中由于test1锁定this,只有test1执行完毕的时候,test2
海蓝星上
·
2020-06-25 08:41
java
高并发编程
Java
高并发编程
(七):读写锁、LockSupport、Condition
读写锁定义:读写锁在同一时刻可以允许多个读线程访问,但是在写线程访问时,所有的读线程和其他写线程均被阻塞。读写锁维护了一对锁,一个读锁和一个写锁,通过分离读锁和写锁,使得并发性相比一般的排他锁有了很大提升。一般情况下,读写锁的性能都会比排它锁好,因为大多数场景读是多于写的。在读多于写的情况下,读写锁能够提供比排它锁更好的并发性和吞吐量。Java并发包提供读写锁的实现是ReentrantReadWr
MasterT-J
·
2020-06-25 00:54
Java并发编程
Java高并发编程
【多线程
高并发编程
】一进程和线程(并发和并行)
文章目录前言1.并发和并行并发并行2.什么是进程和线程进程线程后记程序猿学社的GitHub,欢迎Star:https://github.com/ITfqyd/cxyxs觉得有用,可以点赞,关注,评论,留言四连发。前言为了更好的学习多线程,在这里我们了解一下,一些概念性的描述,只有理解这些概念后,才能更好的学习多线程。加油!!!1.并发和并行并发并发指在同一时刻只能有一条指令执行。也就是单个cpu。
程序猿学社
·
2020-06-24 23:42
多线程
【多线程
高并发编程
】四 java(jdk1.8)五种线程池,你都知道具体的应用场景吗?
程序猿学社的GitHub,欢迎Starhttps://github.com/ITfqyd/cxyxs本文已记录到github,形成对应专题。文章目录前言1.什么是线程池?2.实战2.1通过线程池代码创建线程2.1.Executors源码分析newFixedThreadPoolnewWorkStealingPool(intparallelism)newSingleThreadExecutor()ne
程序猿学社
·
2020-06-24 23:42
多线程
线程池
Thread
java
多线程
并发编程
(
高并发编程
----1)
目录synchronized和ReentrantLock有什么区别?有人说synchronized最慢,这话靠谱吗?典型回答1用法比较2特性比较3注意事项考点分析知识扩展首先,我们需要理解什么是线程安全。线程安全需要保证几个基本特性:synchronized再来看看ReentrantLock。从今天开始,我们将进入Java并发学习阶段。软件并发已经成为现代软件开发的基础能力,而Java精心设计的高
qq541005640
·
2020-06-24 23:15
高并发
多线程----通俗易懂(第三天)
多线程学习-------第三天blibli视频学习地址:马士兵老师
高并发编程
系列importjava.util.concurrent.TimeUnit;publicclassT{intcount=0;synchronizedvoidm1
love_everybody
·
2020-06-24 08:30
多线程
java
多线程
Java多线程拾遗(五)——notify和wait的一些事儿
前言同样参考《Java
高并发编程
详解》一书这篇博客开始梳理notify和wait的一些事儿。同步阻塞与异步非阻塞我们之前总结过什么是同步,什么是阻塞。但并没有总结清楚同步阻塞与异步非阻塞的东西。
谜一样的Coder
·
2020-06-24 05:42
多线程
java
Java多线程拾遗(一)——重新简单认识线程
这次根据《Java
高并发编程
详解》一书进行学习和总结。
谜一样的Coder
·
2020-06-24 05:42
多线程
2018 高考程序员高考卷,看你是不是合格的程序员~
作者分享了许多实用的Java技术干货,受益匪浅,包括Java核心技术、
高并发编程
,分
芋道源码
·
2020-06-22 08:28
JAVA死锁:概念、原因、诊断、避免
参考书籍:《java
高并发编程
详解》什么是死锁?死锁,是指两个或两个以上的线程在执行过程中,由于资源竞争或彼此间通信或某原因造成的死循环而造成的一种(线程)阻塞的现象。
行走的soong
·
2020-06-22 05:30
java源码
汪文均Java并发编程多线程编程实战共三阶段视频教程
汪文均Java并发编程多线程编程实战共三阶段视频教程├─第一阶段│源码+ppt.rar│
高并发编程
第一阶段01讲、课程大纲及主要内容介绍.wmv│
高并发编程
第一阶段02讲、简单介绍什么是线程.wmv│
高并发编程
第一阶段
最是那一低头的温柔
·
2020-06-21 21:53
学习资料
C++多线程编程视频教程(C++11多线程并发)-黄强-专题视频课程
多编程并发在企业中开发显得尤为重要,本课程包含Windows多线程编程与C++11
高并发编程
,通过浅显易懂的代码与讲解,让你的多线程编程能力得到质的飞跃,具备开发高并发代码的能力!
程序员攻略
·
2020-06-21 21:46
视频教程
Windows
多线程并发编程
高并发编程
基础——初识NIO
引入:基础概念:同步:一个对象或者逻辑,在一个时间段内只允许一个线程操作,就是同步操作。异步:一个对象或者逻辑,在一个时间段内只允许多个线程操作,就是异步操作。阻塞:线程没有获取到想要的结果,就会停留在原地等待。非阻塞:线程无论有没有获取到想要的结果,都会继续往下走。Java基础中,学过IO的操作,我们把它叫做BIO,也就是同步阻塞式IO,同步阻塞式IO有它不好的地方,比如它的效率很低,保持恶意连
牛像话
·
2020-06-21 12:39
高并发编程
基础——JUC(BlockingQueue阻塞式队列)
引入:什么是JUC?JUC指的是JDK1.5中提供的一套并发包及其子包:java.util.concurrent,java.util.concurrent.lock,java.util.concurrent.atomic。其中主要内容包括:阻塞式队列、并发映射、锁、执行器服务、原子性操作。阻塞式队列(blockingqueue):概念:阻塞式队列,它也是队列,是队列那就遵循FIFO。需要注意的是,
牛像话
·
2020-06-21 12:07
队列
queue
多线程
java
背了 100 个面试题库,开放性问题还是不会
高并发编程
、分布式框架、Spring等常用框架可以说是现在Java后端求职的必备技能。
weixin_37097680
·
2020-06-21 12:24
有助于提高"锁"性能的几点建议
2019独角兽企业重金招聘Python工程师标准>>>最近阅读《java
高并发编程
一书》大概总结几条,也是书中的内容1.减小锁持有的时间比如100个人去银行办理业务,要填一百张表,但是只有一支笔,那么很显然
weixin_33736832
·
2020-06-21 10:49
Java 高并发第二阶段实战---高并发设计模式,内存模型,CPU一致性协议,volatile关键字剖析
第二阶段的课程主要围绕着Volatile关键字,内存重排序,Happen-Before,Cpu一致性协议,高并发下的设计模式以及类加载器几个大的方面展开,下面是内容详细信息,本教程是本人录制,下载地址为高并发设计模式汪文君
高并发编程
第二阶段
wangwenjun69
·
2020-06-21 09:48
java
Java
高并发编程
详解:多线程与架构设计
内容简介本书主要包含四个部分:部分主要阐述Thread的基础知识,详细介绍线程的API使用、线程安全、线程间数据通信,以及如何保护共享资源等内容,它是深入学习多线程内容的基础。第二部分引入了ClassLoader,这是因为ClassLoader与线程不无关系,我们可以通过synchronized关键字,或者Lock等显式锁的方式在代码的编写阶段对共享资源进行数据一致性保护,那么一个Class在完成
GitChat的博客
·
2020-06-21 09:53
Java
阿里P8架构师汇总了史上101个最牛逼的Java技术点
多线程与
高并发编程
spring,ioc入门与详解maven的简单构建、springAOPspring中的循环依赖、代理方式讲解springBootmvc项目结构开发热部署springBootweb项目整合数据源
sinat_37903468
·
2020-06-21 07:53
架构
马士兵
程序人生
疫情期间:强烈推荐程序员必备阿里面试的300+面试题含答案解析
后端参考答案框架的使用与面试专题开源框架参考答案spring面试专题spring参考答案springboot面试专题springboot参考答案springcloud面试专题springcloud参考springmvcspringmvc参考答案
高并发编程
面试专题
高并发编程
参考答案多线程面试专题多线程参考答案
sinat_37903468
·
2020-06-21 07:53
架构
Java
【多线程
高并发编程
】二 实现多线程的几种方式
程序猿学社的GitHub,欢迎Starhttps://github.com/ITfqyd/cxyxs本文已记录到github,形成对应专题文章目录前言:1.什么是多线程?1.1应用场景2.实现一个多线程的常见几种方式通过继承的方式,实现多线程(第一种)通过实现runnable接口,实现多线程(第二种)匿名内部类实现(第三种)Runnable方式继承类方式通过Callable实现多线程(第四种)启动
程序猿学社
·
2020-06-21 04:15
多线程
Java高并发那点事儿-目录
接下来先介绍一下Java的
高并发编程
:1、多线程2、多线程的本质问题3、sy
宝哥-NO1
·
2020-06-20 22:09
java并发编程
掌握多线程与高并发这些知识点,你能轻松吊打面试官
当你开始开始去跳槽面试的时候,明明只是一份15K的工作,却问你会不会多线程,懂不懂高并发,火箭造的让你促及不防,结果就是凉凉;现如今市场,多线程、
高并发编程
、分布式、负载均衡、集群等可以说是现在高级后端开发求职的必备技能
gyhycx
·
2020-06-20 22:21
多线程
高并发编程
(11) -- 非阻塞算法实现ConcurrentLinkedQueue源码分析
一.背景要实现对队列的安全访问,有两种方式:阻塞算法和非阻塞算法。阻塞算法的实现是使用一把锁(出队和入队同一把锁ArrayBlockingQueue)和两把锁(出队和入队各一把锁LinkedBlockingQueue)来实现;非阻塞算法使用自旋+CAS实现。阻塞,顾名思义:当我们的生产者向队列中生产数据时,若队列已满,那么生产线程会暂停下来,直到队列中有可以存放数据的地方,才会继续工作;而当我们的
码猿手
·
2020-06-17 17:00
「冰河技术」部分精华文章目录汇总
1.高并发专题
高并发编程
一直是程序员比较头疼的事项,它不像那些简单的业务编程,能够快速定位到异常。往往在并发编程中,出现的异常都是比较诡异的,而且并不是每次都会复现。
冰河团队
·
2020-06-15 01:00
多线程
高并发编程
(10) -- ConcurrentHashMap源码分析
一.背景前文讲了HashMap的源码分析,从中可以看到下面的问题:HashMap的put/remove方法不是线程安全的,如果在多线程并发环境下,使用synchronized进行加锁,会导致效率低下;在遍历迭代获取时进行修改(put/remove)操作,会导致发生并发修改异常(ConcurrentModificationException);在JDK1.7之前,对HashMap进行put添加操作,
码猿手
·
2020-06-14 18:00
面试官让我5分钟内写一个抢红包程序,我和他说了半小时原理!
抢红包这一简单的动作,每一次都是对红包服务后台的一次请求,在春节期间海量的服务请求下,其实是一个很典型的
高并发编程
模型。
柠檬橙
·
2020-06-04 01:24
后端
linux
redis
mysql
c++
多线程
高并发编程
(9) -- CopyOnWrite写入时复制
CopyOnWrite写入时复制CopyOnWrite,即快照模式,写入时复制就是不同线程访问同一资源的时候,会获取相同的指针指向这个资源,只有在写操作,才会去复制一份新的数据,然后新的数据在被写操作完后立马被其他线程看到最新的数据变化,然后之前获取的指针会指向新的数据,但在写操作未结束时,其他线程仍然能访问最初的资源。此做法主要的优点是如果没有线程进行写操作,就不会进行数据副本的复制,因此多个线
码猿手
·
2020-05-14 16:00
19本
高并发编程
书籍推荐
Java并发编程实战(java并发的圣经)多处理器编程的艺术(并发编程的各种算法,java实现,有点难度)并发的艺术(多核处理器的共享内存模型中的各种算法)Java虚拟机并发编程(jvm平台上各种语言的并发比较,如java,scala,clojure)Java并发编程的艺术Java7并发编程实战手册(java中的并发编程实践,属于API工具书,指南)Java多线程编程实战指南(设计模式篇)Java
liuhuiteng
·
2020-05-13 08:42
开发书籍
开发书籍
多线程
高并发编程
(8) -- Fork/Join源码分析
一.概念Fork/Join就是将一个大任务分解(fork)成许多个独立的小任务,然后多线程并行去处理这些小任务,每个小任务处理完得到结果再进行合并(join)得到最终的结果。流程:任务继承RecursiveTask,重写compute方法,使用ForkJoinPool的submit提交任务,任务在某个线程中运行,工作任务中的compute方法的代码开始对任务进行分析,如果符合条件就进行任务拆分,拆
码猿手
·
2020-05-11 18:00
多线程
高并发编程
(7) -- Future源码分析
一.概念AFuture计算的结果。提供方法来检查计算是否完成,等待其完成,并检索计算结果。结果只能在计算完成后使用方法get进行检索,如有必要,阻塞,直到准备就绪。取消由cancel方法执行。提供其他方法来确定任务是否正常完成或被取消。计算完成后,不能取消计算。如果您想使用Future,以便不可撤销,但不提供可用的结果,则可以声明Future表格的类型,并返回null作为基础任务的结果。publi
码猿手
·
2020-05-05 16:00
线程基础、线程之间的共享和协作
澄清并行和并发并行:同一时刻,可以同时处理事情的能力并发:与单位时间相关,在单位时间内可以处理事情的能力
高并发编程
的意义、
Yuszha
·
2020-05-02 11:06
2020校招Java开发面试知识点解析(附最新笔面试题)
Java一些知识点1.Java基础知识点2.Java常见集合3.
高并发编程
(JUC包)4.JVM内存管理5.Java8知识点6.网络协议相关7.数据库相关8.MVC框架相关9.大数据相关10.Linux
Java__JJ
·
2020-04-27 13:35
校招
Java开发
面试
【高并发】高并发分布式锁架构解密,不是所有的锁都是分布式锁!!
写在前面最近,很多小伙伴留言说,在学习
高并发编程
时,不太明白分布式锁是用来解决什么问题的,还有不少小伙伴甚至连分布式锁是什么都不太明白。明明在生产环境上使用了自己开发的分布式锁,为什么还会出现问题呢?
冰河团队
·
2020-04-26 13:00
多线程
高并发编程
(6) -- Semaphere、Exchanger源码分析
一.Semaphere1.概念一个计数信号量。在概念上,信号量维持一组许可证。如果有必要,每个acquire()都会阻塞,直到许可证可用,然后才能使用它。每个release()添加许可证,潜在地释放阻塞获取方。但是,没有使用实际的许可证对象;Semaphore只保留可用数量的计数,并相应地执行。即一个Semaphore维护了一组permits【许可证】。每次调用acquire()方法都会阻塞,直到
码猿手
·
2020-04-23 10:00
多线程
高并发编程
(5) -- CountDownLatch、CyclicBarrier源码分析
一.CountDownLatch1.概念publicCountDownLatch(intcount){//初始化if(count=0){//子线程都执行完成了,原先阻塞线程唤醒执行setHeadAndPropagate(node,r);p.next=null;//helpGCfailed=false;return;}}//前继节点非head节点,没资源获取,将前继节点状态设置为SIGNAL,通过p
码猿手
·
2020-04-21 15:00
Golang
高并发编程
For循环中使用Goroutine最容易犯的错误
fileGolanggoroutine是Go语言强大的特性之一,合理的利用它才能发挥最大的价值1、经调查发现初学者一般会犯以下错误使用goroutinefuncgoroutineRun(values[]int){forvalue:=rangevalues{govalue.test()}}或者使用闭包调用funcgoroutineRun(values[]int){forvalue:=rangeval
开发者阿俊
·
2020-04-21 00:49
多线程
高并发编程
(4) -- ReentrantReadWriteLock读写锁源码分析
背景:ReentrantReadWriteLock把锁进行了细化,分为了写锁和读锁,即独占锁和共享锁。独占锁即当前所有线程只有一个可以成功获取到锁对资源进行修改操作,共享锁是可以一起对资源信息进行查看。即写同时只能一个人写,读可以大家一起读。ReentrantReadWriteLock的结构ReentrantReadWriteLock并没有继承ReentrantLock,也并没有实现Lock接口,
码猿手
·
2020-04-20 16:00
深入理解volatile关键字
关于volatile关键字的话,工作中没有遇到使用场景,大部分是面试的时候必问的一个题目;本文主要内容摘自《JAVA
高并发编程
详解》1.CPUCache模型CPUCache主要是为了解决CPU与内存之间访问速度的差异问题
石小令
·
2020-04-19 21:02
volatile
java并
java基础
多线程
高并发编程
(3) -- ReentrantLock源码分析AQS
背景:AbstractQueuedSynchronizer(AQS)publicabstractclassAbstractQueuedSynchronizerextendsAbstractOwnableSynchronizerimplementsjava.io.Serializable介绍提供一个框架,用于实现依赖先进先出(FIFO)等待队列的阻塞锁和相关同步器(信号量,事件等)。该类被设计为大多
码猿手
·
2020-04-17 14:00
多线程
高并发编程
(2) -- 可重入锁介绍和自定义
背景:什么是“可重入”?可重入就是说某个线程已经获得某个锁,可以再次获取锁而不会出现死锁。即可重入锁的作用就是为了避免死锁,java中synchronized和ReentrantLock都是可重入锁。//synchronized可重入锁privatevoidtest(){//第一次获得锁synchronized(this){while(true){//第二次获得同样的锁synchronized(t
码猿手
·
2020-04-16 14:00
多线程
高并发编程
(1) -- 基础及详解
背景:进程和线程的区别:进程的内存大小为:堆内存+线程数量*栈内存,即线程数量=(最大地址空间[MaxProcessMemory]-JVM堆内存-系统保留内存[ReservedOsMemory])/ThreadStackSize(XSS),从中可以看出,线程的数量随栈内存的增多而减少。线程是程序执行的一个路径,每一个线程都有自己的局部变量表、程序计数器(指向正在执行的指令指针)以及各自的生命周期。
码猿手
·
2020-04-15 15:00
高并发编程
必备基础(下)
十三、AbstractQueuedSynchronizer介绍AbstractQueuedSynchronizer提供了一个队列,大多数开发者可能从来不会直接用到AQS,AQS中刮泥这个一个单一的状态信息state,可以通过protected的getState,setState,compareAndSetState函数进行调用。对于ReentrantLock来说,state可以用来表示该线程获可重
阿里加多
·
2020-04-13 11:44
多线程
高并发编程
基础(代码示例+详解)
以下代码均通过使线程睡眠模拟实际业务场景来解释原理Case1(synchronized介绍):publicclassT{privateintcount=10;privateObjecto=newObject();publicvoidm(){synchronized(o){//这里的加锁是对堆内存中的对象进行加锁,而不是对栈中的引用count--;System.out.println(Thread.
Minority
·
2020-04-10 15:10
iOS面试题
面试题如下极光推送使用谈谈对高德地图的使用项目中使用过阿里云的即时通讯,是否使用过非第三方的即时通讯谈谈
高并发编程
你理解的多线程介绍APP启动过程,如果启动比较耗时是否有优化的方法简单说说TCP和UDP
RocketsChen
·
2020-04-09 13:02
[Java并发系列] 5.Java并发工具类
在J.U.C包中,提供了几个非常有用的并发工具类,通过使用这些工具类,可以有效提
高并发编程
中,并发流程的控制,以提升效率和代码质量,如下:CountDownLatchCyclicBarrierSemaphore1
Xiangdong_She
·
2020-04-05 16:10
什么是高并发(java为例)
当提到高并发的时候,很多人就有疑问,到底什么是
高并发编程
?以登录功能为例。当登录的时候,是用户拿用户名,密码到数据库里访问是否存在,存在则跳转到登录页面。
水上冰石
·
2020-04-04 22:03
java
并发编程
博文收藏
系统大规模并发——电商秒杀与抢购springboot系列讲座Jvm运行机制原理Java代码编译和执行的整个过程dubbo用户指南简单之美DubboJava并发编程常识Dubbo实战Redis时延问题分析及应对
高并发编程
必备基础各消息队列对比
zengbaijian
·
2020-03-30 06:57
高端Java架构师的必备学习路线+学习资料 2018架构秘籍 免费赠送
高端Java架构师必知学习路线第一阶段:架构师基础(1)工程构建管理(2)Java开发规范(3)网络编程(4)
高并发编程
与系统调优第二阶段:JavaEE高级(1)SSM项目整合(2)消息中间件ActiveMQ
A尚学堂Nancy老师
·
2020-03-29 20:25
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他