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
并发学习
之BlockingQueue实现生产者消费者
1.介绍阻塞队列(BlockingQueue)是Javautil.concurrent包下重要的数据结构,BlockingQueue提供了线程安全的队列访问方式:当阻塞队列进行插入数据时,如果队列已满,线程将会阻塞等待直到队列非满;从阻塞队列取数据时,如果队列已空,线程将会阻塞等待直到队列非空。并发包下很多高级同步类的实现都是基于BlockingQueue实现的。JDK7提供了以下7个阻塞队列:A
toMatser
·
2020-07-14 02:45
java厚积薄发系列
多线程
Java
并发学习
二:编译优化带来的有序性问题导致的并发Bug
Java
并发学习
系列文章:Java
并发学习
-博客专栏今天在学习极客时间专栏:《Java并发编程实战》第一讲01|可见性、原子性和有序性问题:并发编程Bug的源头中提到:编译器及解释器的优化可能导致意想不到的
zhang0peter
·
2020-07-13 23:11
Java并发
java
Java
并发学习
之synchronized(二)
上一篇看了synchronized修饰代码块,修饰方法。这一篇看下加在静态方法,以及类。废话不多说上代码,本人学习也是边看边学。o(╥﹏╥)o/***测试类*/publicvoidtestSynchronizedClass(){synchronized(SynchronizedExample2.class){for(inti=0;i{synchronizedExample1.testSynchro
Ever_zh
·
2020-07-13 15:40
Java
并发学习
(十七)-并发工具CountDownLatch
有需要可参看:Java
并发学习
(十六)-并发工具CyclicB
6点A君
·
2020-07-13 02:33
Java并发学习
一张图一本书,2位阿里P8共同整理最全Java
并发学习
体系,收藏吧
相信每一个朋友都有过这样的经历,无论是面试还是工作吧,在现在这个社会,大数据量所带来的一系列并发的问题,无时无刻不在折磨着我们”脆弱的神经“,但是又不得不去准备,所以,不知道大家是不是跟我身边好多朋友一样,四处寻找各样的书籍很久之前,我找到一本很不错的书籍《Java并发编程实战》这本书小伙伴们应该不陌生吧,我尝试着读了四章,就放弃了,书是本好书,但实在是读起来头大啊。除去这本经典书籍,市面上还有其
Java架构师联盟
·
2020-07-12 12:42
java
架构
java
编程语言
面试
Java
并发学习
之五——线程的睡眠和恢复
1、Thread类的sleep方法,可以使线程睡眠。此方法接收一个整数作为参数,表示线程暂停运行的毫秒数。在调用sleep方法后,当时间结束时,JVM会安排他们CPU时间,线程会继续按指令执行。另一种可能是使用一个有TimeUnit列举元素的sleep方法,使用线程类的sleep方法让当前线程睡眠,但是它接收的参数单位后会转成毫秒的。2、当你调用sleep()方法,Thread离开CPU并在一段时
weixin_30823227
·
2020-07-12 07:31
软件构造 Java
并发学习
1
[软件构造]08Java
并发学习
1软件构造课程的第7章(并发和分布式编程)是关于并发、线程、线程安全、锁、同步等知识的内容,因为之前没有编写过多线程的程序,所以这几周阅读了一些关于Java并发的内容(Java
泽***
·
2020-07-11 16:23
软件构造
JAVA多线程与
并发学习
总结
一、什么是并发在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。这里需要注意并发和并行是不同的两个概念。并发是指一个时间段内同时运行,这是个区间;而并行是指在同一个时间点上运行,这个是一个点。而且并发在同一个时间点上只能是一个程序在运行。二、什么是进程Windows系统下我们打开任务管理器,点击
飞鱼与飞鸟
·
2020-07-10 12:29
警示
亿级流量高
并发学习
笔记(一)
1、在虚拟机中安装CentOS启动一个virtualbox虚拟机管理软件virtualbox。(1)使用课程提供的CentOS6.5镜像即可,CentOS-6.5-i386-minimal.iso。(2)创建虚拟机:打开VirtualBox,点击“新建”按钮,点击“下一步”,输入虚拟机名称为eshop-cache01,选择操作系统为Linux,选择版本为RedHat,分配1024MB内存,后面的选
selt791
·
2020-07-10 01:07
JavaEE
Java
Linux
Redis
Perl
Java
并发学习
(二)
一、start和run的区别start方法是创建一个新的子线程并启动(调用run方法)run方法只是Thread的一个普通方法的调用二、线程的状态1.新建(New):创建后尚未启动的线程的状态2.运行(Runnable):包含Running和Ready3.无限期等待(Waiting):不会被分配CPU执行时间,需要被唤醒没有设置Timeout参数的Object.wait()方法没有设置Timeou
清雪冰橙
·
2020-07-09 23:45
并发
java基础学习
java之多线程与高
并发学习
关于lamada表达式的学习:https://www.jianshu.com/p/bf2a4e1aac0e单线程就是一个执行路径,多线程就是从多个路径并发执行。多线程和高并发学的似乎就是sychronized和volatile&CAS和AQS。。synchronizedsynchronized,这个东西我们一般称之为”同步锁“,他在修饰代码块的时候需要传入一个引用对象作为“锁”的对象。在修饰方法的
又起风了
·
2020-07-09 21:34
Java
Java
并发学习
笔记 (六) ReentrantLock和 ReentrantReadWriteLock
Java
并发学习
笔记(六)ReentrantLock和ReentrantReadWriteLock目录Java
并发学习
笔记(六)ReentrantLock和ReentrantReadWriteLock一
相遇在梦中
·
2020-07-09 20:39
NIO学习笔记一(概述)
另外发现了一个关于
并发学习
的网站,对于学习并发是个比较好的选择,网址如下:http://ifeve.com/category/concurrency-translation/以下为chp1的内容:1、NIO
iverson1259
·
2020-07-09 17:07
NIO
Java并发44:并发集合系列-基于写时复制的CopyOnWriteArrayList和CopyOnWriteArraySet
[超级链接:Java
并发学习
系列-绪论][系列序章:Java并发43:并发集合系列-序章]原文地址:http://ifeve.com/java-copy-on-write/Copy-On-Write简称
hanchao5272
·
2020-07-09 16:43
Java并发
Java并发学习实例
Java
并发学习
(十三)-ReentrantReadWriteLock学习
WhatisReentrantReadWriteLock读写锁,记得学习AbstractQueuedSynchronizer的时候:Java
并发学习
(三)-AbstractQueuedSynchronize
6点A君
·
2020-07-09 13:46
Java并发学习
大二下学期计划
学习jvm和
并发学习
数据库学习算法(每星期学一点?)学习JS和JQ(一个月)项目云上线(两星期)每日打卡扇贝单词,(一次没背完加一道leecode)这惩
@java小白
·
2020-07-08 22:42
总结
Java并发47:并发集合系列-基于CAS算法的非阻塞单向无界队列ConcurrentLinkedQueue
[超级链接:Java
并发学习
系列-绪论][系列序章:Java并发43:并发集合系列-序章]原文地址:https://www.jianshu.com/p/9e73b9216322一、前言常用的并发队列有阻塞队列和非阻塞队列
hanchao5272
·
2020-07-07 09:22
Java并发
Java并发学习实例
Java并发02:Java并发Concurrent技术发展简史(各版本JDK中的并发技术)
[超级链接:Java
并发学习
系列-绪论]本章主要对Java并发(Concurrent)在不同jdk版本中的发展简史进行学习。
hanchao5272
·
2020-07-07 09:21
Java并发
Java并发学习实例
【Java
并发学习
】之线程合作
【Java
并发学习
】之线程合作前言在前面的小节中,我们谈到了线程之间有两种主要的关系,一种是竞争关系,另外一种是合作关系,竞争关系的基本概念以及基本操作我们已经在前面一个小节中有所学习,本小节呢,主要学习的是线程之间的合作
颜洛滨
·
2020-07-07 05:02
基于数据库乐观锁的秒杀实现
本demo仅供了解
并发学习
之用,还有很多未完善的地方,请大家多多包涵。订单实
孤舟沧海
·
2020-07-07 00:47
Java
秒杀
springboot
mysql
乐观锁
Java
并发学习
笔记(四)-栅栏CyclicBarrier
闭锁是一次性对象,一旦进入终止状态,就不能被重置,它是用来启动一组相关的操作,或者等待一组相关的操作结束。栅栏跟闭锁有点类似,它能阻塞一组线程直到某个时间发生,但是这里有个很大的区别,在栅栏里,只有这组线程都到达栅栏位置时,才能继续执行publicclassCyclicBarrierDemo{publicstaticvoidmain(String[]args){CyclicBarrierbarri
ltnb
·
2020-07-06 07:28
Java
并发学习
之项目准备
新建一个SpringBoot项目:添加Web功能:创建完成,测试是否可用:可以使用。创建annotations包,添加用于标注线程状态的四个注解:1、线程安全的注解packagecom.concurrency.example.annotations;importjava.lang.annotation.ElementType;importjava.lang.annotation.Retention
buyulux
·
2020-07-06 03:33
java
Java
并发学习
之线程安全性
线程安全性定义:当多个线程访问某个类或方法时,不管运行时环境采用何种调度方式或者这些进行如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类或方法是线程安全的。线程安全性体现在三个方面:1、原子性提供了互斥访问,保证同一时刻只能有一个线程来对它进行操作。2、可见性一个线程对主内存的修改可以及时的被其他线程观察到。3、有序性一个线程观察其他线程中的指令
buyulux
·
2020-07-06 03:33
java
Java
并发学习
之安全发布对象
安全发布对象发布对象:使一个对象能被当前范围之外的代码所使用。对象溢出:一种错误的发布。当一个对象还没有构造完成时,就使它被其他线程所见。线程不安全的发布对象:packagecom.concurrency.example.example.publish;importcom.concurrency.example.annotations.NotThreadSafe;importlombok.exte
buyulux
·
2020-07-06 03:02
java
并发学习
01-Java并发机制的底层原理之volatile
该
并发学习
系列以阅读《Java并发编程的艺术》一书的笔记为蓝本,汇集一些阅读过程中找到的解惑资料而成。这是一个边看边写的系列,有兴趣的也可以先自行购买此书学习。
蜜汁炒酸奶
·
2020-07-06 02:11
Java 线程&
并发学习
目录
接下来一阵子会重点学习和加深对Java的并发、线程、线程安全等内容,甚至分布式锁等内容的理解最新一次更新时间:2019年03月10日14:20:48Java线程和锁基础知识Javasynchronized关键字原理学习Java利用wait和notify实现阻塞队列Java线程中断Javavolatile关键字原理学习Java并发之AbstractQueuedSynchronizer(AQS)操作图
jwfy
·
2020-07-05 14:55
并发学习
计划-Executor、ExecutorService和Future的关系01
首先说一下,Executor、ExecutorService和Future这三个类都是接口,如下所示:publicinterfaceExecutorpublicinterfaceExecutorServiceextendsExecutorpublicinterfaceFuture我们可以看到ExecutorService继承Executor,那这三个东西是干嘛的呢,来看看源码。(接口源码有啥好看的
你缺少想象力
·
2020-07-05 07:04
并发学习
计划-ArrayBlockingQueue和LinkedBlockingQueue02
两个东西,看名字就知道是先进先出的队列,不过这个blocking是什么意思,很显然这是“块”的意思,也就是这是一个阻塞队列。举个生活中的例子,篮子里面最多只能放5个苹果,一个人往篮子里面放,一个人往篮子里面拿,假设篮子的容量满了,就要等一个人拿出来之后才能放,篮子空了也要等一个人把苹果放进去才能拿。上面的例子有点消费生产者模式的意思。跟今天我们要说的BlockingQueue有啥关系呢,这两个Bl
你缺少想象力
·
2020-07-05 05:18
【Java高
并发学习
】读写锁、倒计时器、LockSupport、线程池
1.ReadWriteLock读写锁JDK5中提供了读写锁,可以有效地减少锁竞争提高性能。比如线程A1、A2、A3进行写操作,B1、B2、B3进行读操作,在使用重入锁、内部锁(synchronized)时,理论上所有的读之间、写之间、读写之间都是串行的。当B1在进行读操作时,B2、B3也得等待B1的锁资源释放,但是读操作并不会破坏数据的完整性,这种等待便没有了意义。读写读非阻塞阻塞写阻塞阻塞imp
炒熟的番茄
·
2020-07-05 04:21
Java高并发
Java
并发学习
笔记 (十) ScheduledThreadPoolExecutor
Java
并发学习
笔记(十)ScheduledThreadPoolExecutor目录Java
并发学习
笔记(十)ScheduledThreadPoolExecutor一.简介二.FutureTask2.1Callable
相遇在梦中
·
2020-07-04 23:13
Java并发32:CyclicBarrier的基本方法和应用场景实例
[超级链接:Java
并发学习
系列-绪论]本章主要对CyclicBarrier进行学习。
hanchao5272
·
2020-07-04 17:42
Java并发
Java并发学习实例
Java并发33:Semaphore基本方法与应用场景实例
[超级链接:Java
并发学习
系列-绪论]本章主要对Semaphore进行学习。
hanchao5272
·
2020-07-04 17:42
Java并发
Java并发学习实例
Java并发36:Callable+Future系列--FutureTask学习笔记
[超级链接:Java
并发学习
系列-绪论]本章主要学习FutureTask接口。1.FutureTask概述FutureTask类表示一个可以取消的异步计算任务。
hanchao5272
·
2020-07-04 17:42
Java并发
Java并发学习实例
java
并发学习
:synchronized 的不足之处
程老师原文地址:http://flychao88.iteye.com/blog/1852893原文如下:1、不能够跨越多个对象。2、当在等待锁对象的时候,不能中途放弃,直到成功。3、等待没有超时限制。4、不能中断阻塞。*******************************学习笔记**********************************************看完了一时无从下手,
bohu83
·
2020-07-04 12:06
并发系列整理
java多线程高
并发学习
多线程线程与进程的区别学习多线程首先要搞清楚线程和进程之间的区别,主要区别如下:进程进程是程序的一次执行过程,是一个动态的概念,是程序在执行过程中分配和管理资源的基本单位,每一个进程都有一个自己的地址空间。进程至少有五种状态:初始态,执行态,等待态,就绪态,终止态线程CPU调度和分派的基本单位。区别1、一个线程只能属于一个进程,而一个进程可以拥有多个线程。2、进程是一段正在运行的程序,而线程只是C
我是一个寄生虫
·
2020-07-04 07:19
Java学习
ava
并发学习
之二:线程池
第二步,是实现一个线程池因为之前看书的时候留了个心眼,看线程池相关的内容的时候特意没去研究JDK的实现因为学跟做不是一码事,写一个线程池,算是给自己看完并发实践这书的一个练习吧废话不多说,练习开始首先,整理一下要实现的功能,或者说要注意的元素1.实现Executor接口2.实现一个等待队列(可否配置,优先级等)3.是否需要预启动线程(可否配置)4.执行开始前,结束后,需要留接口5.Runable在
iteye_21162
·
2020-07-02 04:41
其他
算法
JVM
JDK
Java
并发学习
笔记(1):进程与线程的基本概念
本系列主要参考文章http://concurrent.redspider.group/文章目录一、进程产生的背景1.批处理操作系统2.进程的提出3.线程的提出4.多进程的方式也可以实现并发,为什么还需要使用多线程?5.进程和线程的区别?二、上下文切换一、进程产生的背景1.批处理操作系统指令运行方式是串行的,内存中始终只有一个程序在运行因为串行运行,所以每个程序需要依此排队执行,所以效率不高2.进程
小胖头
·
2020-07-01 23:29
JavaSE
python
并发学习
(基于线程的并行)
背景通常一个应用有一个进程,分成多个独立的线程,并行运行,互相配合,执行不同类型的任务。线程是独立的处理流程,,可以和系统的其他线程并行或者并发的执行。多线程可以共享资源和数据,利用所谓的共享内存空间。线程和进程的使用取决于你要运行的操作系统。但是总体来说我们可以说线程是包含在进程之间的,统一进程可以有多个不同的线程可以共享相同的资源。想比而言,进程之间不会进行共享资源。每个线程基本上包含3个元素
yangxiaodong88
·
2020-06-30 06:28
python
JAVA多线程高
并发学习
工欲善其事,必先利其器postman可作为一个简单的并发测试JMeter相比于postman更加强大JMeter入门:https://www.jianshu.com/p/0e4daecc8122线程安全性:定义:当多个线程访问某个类时,不管采用任何调度方式,不需要额外的同步或者协调,这个类都能表现出正确的结果,这个类就成为是线程安全的线程安全性主要体现在原子性:互斥访问,同一时间只能有一个线程操作
NO:134340
·
2020-06-30 04:50
java
Java8 线程池源码学习
更多并发相关内容,查看==>Java线程&
并发学习
目录线程池2017年05月22日19:13第一次编辑2017年12月07日15:18完善了一些内容2018年12月09日17:25:21修改了在addWork
jwfy
·
2020-06-29 07:05
Java多线程高
并发学习
笔记(一)——Thread&Runnable
进程与线程首先来看百度百科关于进程的介绍:进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。直观一点:windows的任务管理里面,我们看到的eclipse和360等等,都是进程。(想深入了解的可以看看计算机操作系统)什么是线程?线程是在一个进程
weixin_34068198
·
2020-06-28 10:03
java
并发学习
--线程池(一)
关于java中的线程池,我一开始觉得就是为了避免频繁的创建和销毁线程吧,先创建一定量的线程,然后再进行复用。但是要具体说一下如何做到的,自己又说不出一个一二三来了,这大概就是自己的学习习惯流于表面,不经常深入的结果吧。所以这里决定系统的学习一下线程池的相关知识。自己稍微总结了一下,学习一些新的知识或者技术的时候,大概都可以分为这么几个点:1、为什么会有这项技术,用原来的方法有什么问题。2、这项新技
weixin_30872157
·
2020-06-28 01:31
转:java高
并发学习
记录-死锁,活锁,饥饿
死锁两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。为什么会产生死锁:①因为系统资源不足。②进程运行推进的顺序不合适。③资源分配不当。产生死锁的条件有四个:①互斥条件:所谓互斥就是进程在某一时间内独占资源。②请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。③不剥夺条件:进程已获得资源,在末使用完之前,不能强行剥夺。④循
weixin_30764883
·
2020-06-28 00:03
并发学习
之 - synchronized
上一篇文章并发基础知识扫盲讲了一些java中并发相关的基础性的东西,这篇来了解下同步中常使用的关键字synchronized。synchronized关键字是随着Java的诞生就有的的,它对于开发者来说,使用起来非常方便,无需关心底层的复杂实现。但是在使用过程中开发者往往担心synchronized带来的性能问题,认为它太重了,获得锁和释放锁的确会带来性能上的消耗。在JavaSE1.6之后,syn
RalfNick
·
2020-06-27 01:28
并发
并发学习
之 - ReentrantLock
synchronized和ReentrantLock上一篇文章
并发学习
之-synchronized中我们讲解了如何使用关键字synchronized来实现同步访问。
RalfNick
·
2020-06-27 01:28
并发
java
并发学习
之六:JCSP(Java Communicating Sequential Processes)实践
首先得描述下什么是JCSP:CSP是CommunicatingSequentialProcesses的缩写在ibm的developerworks中国上学习java的并发编程时无意发现的,因为在之前的多线程编程实践中,调试一个多线程的bug都花了大量的时间,所以一直想找点工具或者技巧来学习一下然后就发现了这个玩意儿,这是JCSP在ibm的地址:[url=http://www.ibm.com/deve
snake168
·
2020-06-26 13:59
java
多线程与高
并发学习
笔记——第一章:线程的基本概念与使用
线程的基本概念与使用本章包含知识点:并发简单概念,线程的简单创建与使用,线程的休眠,线程的生命周期,线程优先级,线程礼让,线程加入。1.进程和线程的概念进程:一个程序运行所占用的资源的描述,一个程序被运行,系统就会为他开辟一个进程,是资源分分配的最小单位。进程之间不可相互通信。线程:一个进程中有多个线程,在一个进程中可以建立新的现成线程是程序执行时的最小单位。进程包含线程,如果进程中的所有线程都没
我就是我500
·
2020-06-26 00:46
多线程与高并发学习笔记
Java
并发学习
(一):Java内存模型
基础-两个关键问题线程间通信线程间通信的机制有两种:1、共享内存:线程之间通过读写程序的公共状态进行隐式通信2、消息传递:线程之间通过发送消息来显示进行通信,线程间没有公共状态线程间同步同步是指程序中用于控制不同线程间操作发生相对顺序的机制。共享内存并发模型中,同步是显示进行,程序员必须显示指定方法或代码间是互斥执行;消息传递机制中,同步是隐式进行的java开发采用的是共享内存模型,线程间通信是隐
ShannonAJ
·
2020-06-25 12:32
15、synchronized和ReentrantLock有什么区别呢?(高并发编程----1)
从今天开始,我们将进入Java
并发学习
阶段。软件并发已经成为现代软件开发的基础能力,而Java精心设计的高
qq541005640
·
2020-06-24 23:15
高并发
python多线程
并发学习
1.python多线程适用于什么场景?举个��:当我们想从网页上下载信息,或者从ftp服务器上下载版本时,若是版本太大,那么顺序的执行下载N个(N>1)版本就会耗费许多时间,若是可以并发地下载,那么就会省时很多适用场景:IO密集型的场景不适用场景:CPU使用率高的场景,如有大量数据的计算的场合,曾经用python处理过4000多个性能计算器生成的csv文件,发现多线程处理时,效率提升不明显。2.怎
nfzhlk
·
2020-06-24 17:29
技术干货
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他