![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
高并发多线程
高并发多线程
Java觉浅
我不懒,也还没添加简介
展开
-
我的并发编程(三):Volatile的底层实现及原理
一、概述 Java语言中要学习同步和多线程,必定绕不开Volatile关键字,它定义为Java允许线程访问共享变量,为了确保共享变量能够被准确和一致性地更新,线程应该确保通过排它锁单独获得这个变量。那么今天我们来深入解析一下Volatile的底层实现及原理。 二、详细分析 1. 程序在计算机中如何执行的? 计算机的组成如下图所示: 当我们需要执行一个程序时,分为以下几步: (1) 将程序从磁盘中加载到内存中做成一个进程,进程里面...原创 2020-07-24 17:41:44 · 1337 阅读 · 0 评论 -
我的并发编程(二):java对象头以及synchronized升级过程
一、概述 研究java对象头的目的是详细分析Java的synchronized锁的升级过程,因为synchronized在锁升级的时候,就是依赖对象头的信息来决定的。本博文针对64位的操作系统来对Java对象头进行详解。 二、详细分析 1. 用户态与内核态 内核态与用户态是操作系统的两种运行级别,当程序运行在3级特权级上时, 就可以称之为运行在用户态,因为这是最低特权级,是普通的用户进程运 行的特权级,大部分用户直接面对的程序都是运行在用户态;当程序运行在0级特权级...原创 2020-07-02 21:52:14 · 501 阅读 · 0 评论 -
我的并发编程(一):java锁的分类
一、概述 在我们的开发工作中,需要利用多线程处理高并发的情况,那么我们就不可避免的需要用到锁机制。分类总览图如下: 二、锁的分类 1. 公平锁与非公平锁 (1) 公平锁:在并发环境中,多个线程需要对同一资源进行访问,同一时刻只能有一个线程能够获取到锁并进行资源访问,其他的每个线程都在等待资源访问的机会,并且遵循先来后到的顺序,这样的锁就叫做公平锁。 (2)非公平锁:如果针对上诉情况,后来的锁反而比先来的锁先获得资源访问的权限,也就是其他线程获取资源的顺序是随机...原创 2020-06-11 19:32:33 · 286 阅读 · 0 评论