![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 81
登山人在路上
这个作者很懒,什么都没留下…
展开
-
volatile关键字介绍
Java中的volatile关键字主要用于多线程编程中,其作用包括保证变量的可见性和禁止指令重排。然而,它并不保证原子性,对于复合操作需要使用其他同步机制来保证。在使用volatile时,需要仔细考虑其适用性,并理解其背后的原理和限制。原创 2024-08-03 14:37:59 · 218 阅读 · 0 评论 -
CompletableFuture 基本用法
是 Java 8 引入的一个功能强大的类,用于异步编程和并发处理。它提供了丰富的 API 来处理异步任务的结果,支持函数式编程风格,并允许通过链式调用组合多个异步操作。原创 2024-06-22 21:33:37 · 1669 阅读 · 0 评论 -
synchronized关键字的使用
synchronized 是 Java 中的一个关键字,用于实现多线程之间的同步访问。它用于确保在多线程环境中,同一时间只有一个线程可以执行某个方法或代码块。这是通过锁定一个对象或类来实现的,以防止多个线程同时访问共享资源,从而导致数据不一致或其他并发问题。在方法声明中使用synchronized,将其放在范围操作符(如public)后,返回类型声明(如void)之前。这样,当一个线程进入该方法时,其他线程将被阻塞,直到该线程退出该方法。例如:// 方法体。原创 2024-05-21 15:37:32 · 393 阅读 · 0 评论 -
线程池ThreadPoolExecutor源码分析
继承Thread类通过继承Thread类并重写其run方法来创建线程。具体步骤包括定义Thread类的子类,在子类中重写run方法以实现线程的具体逻辑,然后创建子类的实例并调用其start方法来启动线程。实现Runnable接口通过实现Runnable接口并重写其run方法来创建线程。这种方式相较于继承Thread类更为灵活,因为Java不支持多重继承,而实现接口则没有这个问题。原创 2024-06-16 17:04:05 · 743 阅读 · 0 评论 -
AtomicInteger类介绍
AtomicInteger是系统底层保护的int类型,通过对int类型的数据进行封装,提供执行方法的控制进行值的原子操作。但它并不等同于Java的基本数据类型Integer。从JAVA 1.5开始,AtomicInteger就被引入到了Java的并发包中,成为java.util.concurrent.atomic包下的一个类。原创 2024-06-16 10:57:37 · 521 阅读 · 0 评论 -
多线程基础
构造函数:使用给定的Callable对象创建新的FutureTask。Callable的call方法会在任务执行时被调用。:使用给定的Runnable对象和结果值创建新的FutureTask。Runnable的run方法会在任务执行时被调用,并且返回的结果将是构造函数中提供的result。执行任务由于FutureTask实现了Runnable接口,因此可以直接将其传递给Thread的构造函数来创建线程,并启动线程以执行任务。获取结果get():等待计算完成,然后获取其结果。原创 2024-06-22 17:57:52 · 927 阅读 · 0 评论