线程
文章平均质量分 92
线程
搬砖界的小白
凡所迹遇,绝非偶然
展开
-
【并发】第九篇 Atomic原子操作类 - 字段更新器类详解
Atomic的字段更新器类是Java中一种用于实现线程安全的字段更新操作的类。它提供了一组原子操作,可以对字段进行原子性的更新。在并发环境中,多个线程同时更新一个字段可能会出现竞态条件(Race Condition)导致数据不一致的问题。Atomic的字段更新器类基于CAS(Compare And Swap)操作机制来保证对字段的原子操作,避免了竞态条件的发生。Atomic的字段更新器类的常用实现包括(原子更新整型的字段的更新器)、(原子更新长整型字段的更新器)、(原子更新引用类型里的字段)等。原创 2024-04-17 18:03:06 · 597 阅读 · 0 评论 -
【并发】第八篇 Atomic原子操作类 - 引用类型类详解
Atomic原子操作类是Java中提供的一组线程安全的基本数据类型操作类,可用于实现线程安全的并发编程。它们可以确保在并发环境下对变量进行原子操作,即不会被其他线程中断或同时修改。原子更新基本类型的 AtomicInteger,只能更新一个变量, 如果要原子更新多个变量,就需要使用这个原子更新引用类型提供的类,包括。注: 源码版本是基于JDK1.8 版本。原创 2024-04-17 16:33:43 · 974 阅读 · 0 评论 -
【并发】第七篇 Atomic原子操作类 - 数组类型类详解
Atomic原子操作类是Java中提供的一组线程安全的基本数据类型操作类,可用于实现线程安全的并发编程。它们可以确保在并发环境下对变量进行原子操作,即不会被其他线程中断或同时修改。原创 2024-04-16 14:55:11 · 594 阅读 · 0 评论 -
【并发】第六篇 Atomic原子操作类 - 基本类型类详解
Atomic原子操作类是Java中提供的一组线程安全的基本数据类型操作类,可用于实现线程安全的并发编程。它们可以确保在并发环境下对变量进行原子操作,即不会被其他线程中断或同时修改。常用的基本类型类有AtomicLong和。原创 2024-04-15 16:39:03 · 934 阅读 · 0 评论 -
【并发】 第五篇 原子操作(二) - CAS 详解
CAS是"比较并交换"(Compare and Swap)的缩写。是一种并发控制机制,用于实现多个线程同时对同一数据进行原子操作(读取、写入、更新),并且能够保证操作的一致性。# 1.比较:通过比较当前值和期望值是否一致来判断是否修改成功# 2.交换:如果一致则修改,否则重新尝试。CAS的一种常见应用是实现乐观锁。在乐观锁机制中,线程在更新共享变量之前先检查该变量是否被其他线程修改过,如果没有修改则更新,否则重新尝试。CAS操作正是基于这个原理来实现的。原创 2024-04-12 14:49:49 · 776 阅读 · 0 评论 -
【并发】 第四篇 原子操作
此时,如果有其他线程也执行对该共享变量的值进行修改操作, 那么上述的三个步骤,就会受到其他线程的干扰,最终内存中的共享变量值可能就不是期望的结果。这是因为每个线程最开始从内存中获取的值, 有可能被其他线程修改了, 线程之间的数据是不同步的, 导致线程最后写入的值会被其他线程覆盖。上述的例子中,线程的操作会受到其他线程的干扰, 并非原子操作, 而使用原子操作即可解决上述现象。原子操作是指不能被中断的一组操作,要么全部执行成功,要么全部不执行,不会出现部分执行的情况。将上面的例子代码优化下,原创 2024-04-12 10:48:38 · 421 阅读 · 0 评论 -
《Java》第二篇 创建线程的方式和生命周期
一.线程与进程的区别二.Java中创建线程的集中方式三.线程的生命周期四.多线程与多进程五.线程池的使用原理以及在项目中的使用场景六.进程的分类七.线程同步八.线程中的死锁原创 2020-04-02 10:40:17 · 186 阅读 · 0 评论 -
《Java》第一篇 进程与线程的区别
基本概念进程:我们都知道计算机的核心是CPU,它承担了所有的计算任务,而操作系统是计算机的管理者,它负责任务的调度,资源的分配和管理统领整个计算机硬件;应用程序是具有某种功能的程序,程序是运行于操作系统之上的。进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程序,数据集合和进程控制块三部分组成。程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程原创 2020-03-27 17:57:27 · 121 阅读 · 0 评论