码迷,mamicode.com
首页 >  
搜索关键字:Java.并发编程    ( 1354个结果
公平锁与非公平锁
在Java并发编程中,公平锁与非公平锁是很常见的概念,ReentrantLock、ReadWriteLock默认都是非公平模式,非公平锁的效率为何高于公平锁呢?究竟公平与非公平有何区别呢? 首先先简单从名字上来理解,公平锁就是保障了多线程下各线程获取锁的顺序,先到的线程优先获取锁,而非公平锁则无法提 ...
分类:其他好文   时间:2019-05-02 00:32:09    阅读次数:177
双重检查锁定
看 "java并发编程的艺术" 第3.8 双重检查锁定与延迟初始化 在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。本文将分析双重检查锁定的错误根源,以及两种线程安全的延迟初始化方案。 需要注意的是, 双重检查 ...
分类:其他好文   时间:2019-04-29 20:41:30    阅读次数:103
Java并发编程之美之并发编程线程基础
什么是线程 进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,线程则是进程的一个执行路径,一个进程至少有一个线程,进程的多个线程共享进程的资源。 java启动main函数其实就是启动了一个JVM的进程,而main函数所在的线程就是这个进程的一个线程,也称主线程。 进程和线程关 ...
分类:编程语言   时间:2019-04-28 20:53:24    阅读次数:174
Java 并发编程
1. 同步器是一些使线程能够等待另一个线程的对象,允许它们协调动作。最常用的同步器是CountDownLatch和Semaphore,不常用的是Barrier 和Exchanger CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作前需要一个或多个其他的线程处于阻塞状态 ...
分类:编程语言   时间:2019-04-25 10:31:16    阅读次数:157
volatile原理解析
Java并发编程:volatile关键字解析 volatile 有序性、可见性 volatile可以保证一定程度上有序性,即volatile前面的代码先于后面的代码先执行。 但是前、后代码,各自里面的顺序性是无法保证的。 可见性: 在Java内存模型中,允许编译器和处理器对指令进行重排序,但是重排序 ...
分类:其他好文   时间:2019-04-21 09:26:25    阅读次数:137
JAVA并发编程:volatile的使用及其原理
一、volatile的使用 1、防止重排序 在并发环境下实现单例模式,我们通常可以采用双重检查加锁(DCL)的方式来现实: public class Singleton { public static volatile Singleton singleton; private Singleton() ...
分类:编程语言   时间:2019-04-14 18:02:40    阅读次数:129
JAVA并发编程:synchronized及其实现原理
一、synchronized的基本使用 synchronized是Java中解决并发问题的一种最常用的方法,也就最简单的一种方法。synchronized的作用有以下三个: (1)确保线程互斥的访问同步代码 (2)保证共享变量的修改能及时可见 (3)有效解决重排序问题 从语法上将,synchroni ...
分类:编程语言   时间:2019-04-14 09:56:54    阅读次数:136
JAVA并发编程:核心理论
一、共享性 数据共享性是线程安全的主要原因之一。 如果所有的数据只在线程内有效,那就不存在线程安全性问题,这也是我们在编程的时候经常不需要考虑线程安全的主要情况之一。但是在多线程编程中,数据共享是不可避免的。最典型的场景就是数据库中的数据,为了保证数据的一致性,我们通常需要共享同一个数据库中的数据, ...
分类:编程语言   时间:2019-04-14 09:38:26    阅读次数:127
JAVA并发编程>>并发级别
理解并发 这是我在开发者头条看到的。@编程原理林振华 有目标的提升自己会事半功倍,前行的道路并不孤独。 1、阻塞 当一个线程进入临界区(公共资源区)后,其他线程必须在临界区外等待,待进去的线程执行完成任务离开临界去后,其它线程才能进去。 2、无饥饿 线程排队先来后到,不管优先级大小,先来先执行,,就 ...
分类:编程语言   时间:2019-04-13 01:09:35    阅读次数:147
JAVA并发编程>>概念准备
工于其善,必先利器 1、并发和并行的区别 并行:同一时间点执行多个任务(CPU多核或多个CPU同时执行多个任务) 并发:同一时间段内行多个任务(单核同时执行多个任务) 2、同步和异步的区别 同步:执行某个操作,按顺序执行下去,直到结束。 异步:执行某个操作后,立即离开,等到有返回结果时,回来继续执行 ...
分类:编程语言   时间:2019-04-12 23:08:31    阅读次数:169
1354条   上一页 1 ... 21 22 23 24 25 ... 136 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!