加载中
java 线程池使用与结构解析

线程池什么情况下使用,解决什么问题 线程池的使用 线程池的结构解析 线程池什么情况下使用,解决什么问题 线程的创建和销毁是要占用一定的资源的,创建线程会直接向系统申请,调用系统函数进...

自旋锁的java实现

package com.pimee.lock; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; /** 自旋锁 */ public class SpinLockDemo { // 共享 AtomicRefere...

2021/12/30 16:38
16
多线程之Synchronized

sychronized的使用 修饰方法 public synchronized void method(){} 修饰代码块 锁对象: public void method(){ synchronized(this){ } } 锁类: public static void method(){ synchroni.....

2021/12/24 11:12
116
多线程之ThreadLocal

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

2021/11/20 12:14
85
多线程之生产者消费者(Sychronized、wait、notify)

生产者消费者可以使用对象的wait、notify、notifyAll方法来实现。 这三个方法使用是必须在获取到对象锁之后才可以使用。 简单介绍方法: wait方法 当一个线程调用一个共享变量的wait方法时,...

2021/11/19 16:32
60
java指令重排

指令重排,是由于现代计算机的CPU执行速度比内存速度快,CPU在保证不影响最后结果的情况下,执行各个指令。 例如 Integer i = 2; 整个过程,正常顺序: 内存分配,赋予默认值0 把2赋予初始化...

2021/09/05 01:15
106
java的volatile关键字

1.解决什么问题 2.实现机制 3.使用场景 解决什么问题? 内存可见性 在执行变量写操作后,执行lock指令,这个指令将变量实时写入到主内存而不是处理器的缓存中,然后其他处理器通过缓存一致性...

2021/04/15 19:31
185
锁的初认识

悲观锁 乐观锁 公平锁 非公平锁 独占锁 共享锁 可重入锁 自旋锁 悲观锁 悲观锁指对数据被外界修改持保守态度,认为数据很容易就会被其他线程修改,所以在数据被处理前先对数据进行加锁, 并在...

2021/04/13 22:58
4.8K
线程死锁的认识和示例

死锁定义 死锁产生的条件 死锁示例 如何避免死锁 1. 死锁定义 ● 死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成互相等待的现象, 在无外力作用的情况下,这些线程会一直相互等...

2021/04/12 15:07
130
java线程创建方式(4种)

继承Thread类 实现Runnable接口 实现Callable接口,使用FutureTask方式 使用线程池 继承Thread类 package com.pimee.thread; /** 继承Thread创建线程 @author Bruce Shaw */ publi......

2021/04/09 16:18
54
java多线程同步问题小demo

线程同步问题,一般解决是添加同步锁,可以使用synchronized关键字,可以修饰方法、代码块 代码块: // 1.代码块 synchronized(同步对象){ //业务逻辑 } // 2.方法 public synchronized void...

2021/02/03 11:52
137
java线程初认识

进程定义: 狭义定义:进程是正在运行的程序的实例(an instance of a computer program that is being executed)。 广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行...

2021/02/01 17:59
84

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部