加载中
threadlocal

Modifier and Type Method and Description T get() 返回当前线程的此线程局部变量的副本中的值。 protected T initialValue() 返回此线程局部变量的当前线程的“初始值”。 void remove() ...

10/09 23:13
107
聊聊读写锁stampedLock

锁可以分类两大类:读锁和写锁 读锁是共享锁,写锁是排他锁,读读共享,读写互斥,写写互斥,写读互斥。 从升级层面来说: 1.无锁,再无并发,效率最高 2.synchronized 有锁,不过效率偏低,...

08/27 23:31
261
并发编程原理

java多线程的锁主要是为了干嘛? 保证线程同步执行,如果没有锁 A线程,B线程 a(){ int i; } A和B线程都会访问到a(),同时对a变量做修改,就会造成脏读 如果能够保证A线程,B线程的执行顺序,...

04/12 09:37
543
深入分析CAS(乐观锁)

什么是CAS (1)CAS(compare and swap) 比较并替换,比较和替换是线程并发算法时用到的一种技术 (2)CAS是原子操作,保证并发安全,而不是保证并发同步 (3)CAS是CPU的一个指令 (4)CAS是...

CAS
2019/10/25 16:35
137
java中锁的优化 -- JVM对synchronized的优化

java中锁的优化 -- JVM对synchronized的优化 1)锁消除 概念:JVM在JIT编译(即时编译)时,通过对运行上下文的扫描,去除掉那些不可能发生共享资源竞争的锁,从而节省了线程请求这些锁的时间。...

2019/10/25 16:04
140
Java 之 synchronized 详解

一、概念 synchronized 是 Java 中的关键字,是利用锁的机制来实现同步的。 锁机制有如下两种特性: 互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程中的协调机...

2019/10/25 14:52
250
juc线程间通信

两个线程,一个线程打印1-52,另一个打印字母A-Z打印顺序为12A34B...5152Z, 要求用线程间通信 1.synchronized实现 package com.liuyuanyuan.thread; import java.util.concurrent.locks.Cond...

2019/08/04 11:53
57
JUC上篇

1、JUC是什么? 2.首先要回忆一下什么是进程和线程。 进程:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既...

2019/08/03 20:52
83
juc

1. JUC 简介 在 Java 5.0 提供了 java.util.concurrent(简称JUC)包,在此包中增加了在并发编程中很常用的工具类, 用于定义类似于线程的自定义子系统,包括线程池,异步 IO 和轻量级任务框架;还提...

2019/03/10 12:12
94
ThreadLocal

一、ThreadLocal简介   多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步...

05/31 23:29
37
Java多线程之死锁编码及定位分析

目录 死锁是什么 代码实现 死锁解决办法 1. 死锁是什么 死锁是指两个或两个以上的进程在执行过程中因争夺资而造成的一种互相等待的现象,若无外力干涉那它们都将无法推进下去, 如果系统资源...

2019/08/06 19:47
81
Java多线程之线程池配置合理线程数

目录 代码查看公司服务器或阿里云是几核的 合理线程数配置之CPU密集型 合理线程数配置之IO密集型 1. 代码查看公司服务器或阿里云是几核的 要合理配置线程数首先要知道公司服务器或阿里云是几...

2019/08/06 19:44
209
Java多线程之线程池的手写改造和拒绝策略

目录 自定义线程池的使用 四种拒绝策略代码体现 1. 自定义线程池的使用 自定义线程池(拒绝策略默认AbortPolicy) public class MyThreadPoolDemo { public static void main(String[] args)...

2019/08/06 19:41
186
Java多线程之线程池7大参数、底层工作原理、拒绝策略详解

Java多线程之线程池7大参数详解 目录 企业面试题 线程池7大参数源码 线程池7大参数详解 底层工作原理详解 线程池的4种拒绝策略理论简介 面试的坑:线程池实际中使用哪一个? 1. 企业面试题 ...

2019/08/06 19:37
454
Java多线程之线程池详解

目录: 线程池使用及优势 线程池3个常用方式 线程池7大参数深入介绍 线程池底层工作原理 1. 线程池使用及优势 线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在...

2019/08/06 19:30
12
Java多线程之Callable、Future和FutureTask

我们学习java基础的时候,知道创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行...

2019/08/06 19:19
24
Java多线程之线程虚假唤醒

本文目录提纲 问题:两个线程对一个初始值为零的变量操作,实现一个线程加一,另一个线程减一,来十次。 问题:四个线程对一个初始值为零的变量操作,实现两个线程加一,另外两个线程减一,来...

2019/08/05 20:28
51
Java多线程之volatile详解

目录: 什么是volatile? JMM内存模型之可见性 volatile三大特性之一:保证可见性 volatile三大特性之二:不保证原子性 volatile三大特性之三: 禁止指令重排 小结 1. 什么是volatile? 答:...

2019/08/05 20:20
73
Java多线程之Semaphore用法

本文目录: Semaphore基本概念 Semaphore使用案例:3个停车位,6辆车去抢,走一辆,抢一个停车位。 1. Semaphore基本概念 在信号量上我们定义两种操作: 1. 信号量主要用于两个目的,一个是用...

2019/08/05 19:21
678

没有更多内容

加载失败,请刷新页面

返回顶部
顶部