`
Franciswmf
  • 浏览: 797226 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

java 多线程 AtomicInteger原子变量

 
阅读更多
/**
 * AtomicInteger
 * @author admin
 *
 */
public class AtomicVolatile {
	private static AtomicInteger count=new AtomicInteger(0);//原子变量
	/**
	 * 加1
	 */
	private static void add(){
		count.incrementAndGet();
	}
	/**
	 * 主程序
	 * @param args
	 */
	public static void main(String[] args) {
		ExecutorService threadPool=Executors.newFixedThreadPool(100);//线程池Integer.MAX_VALUE
		//#s
		for (int i = 0; i < 10000; i++) {
			threadPool.execute(new Runnable() {
				@Override
				public void run() {
					AtomicVolatile.add();//不断加1
				}
			});
		}
		//#e
		threadPool.shutdown();
		try {
			threadPool.awaitTermination(500, TimeUnit.SECONDS);//给予一个关闭时间(timeout)等待线程停止,但是实际关闭时间应该会这个小
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		
		System.out.println("输出:"+AtomicVolatile.count);//输出结果与预期一致
		
	}

}

分享到:
评论

相关推荐

    java多线程_java多线程下变量共享_

    本篇文章将深入探讨Java多线程下变量共享的问题以及解决策略。 在Java中,线程共享变量可以通过两种方式实现:静态成员变量和实例成员变量。静态成员属于类,所有该类的实例都可以访问,因此在多线程环境下默认共享...

    Java多线程编程核心技术_完整版_java_

    Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,极大地提高了程序的效率和响应性。在Java中,多线程主要通过继承Thread类或实现Runnable接口来实现。本教程《Java多线程编程核心技术》将...

    java 多线程编程实战指南(核心 + 设计模式 完整版)

    《Java多线程编程实战指南》这本书深入浅出地讲解了Java多线程的核心概念和实战技巧,分为核心篇和设计模式篇,旨在帮助开发者掌握并应用多线程技术。 1. **线程基础** - **线程的创建**:Java提供了两种创建线程...

    java多线程设计

    本知识点将深入探讨Java多线程设计以及如何利用“不可变对象”(immutable objects)来避免多线程环境中的非安全问题。 一、Java多线程基础 1. 线程的创建:Java提供了两种创建线程的方式——继承Thread类和实现...

    Java多线程详解及示例

    Java多线程编程是提升程序性能和响应性的关键技术。理解多线程的概念,掌握线程的创建、同步、通信、死锁避免等核心知识点,以及合理使用线程池,对于编写高效、稳定的并发程序至关重要。通过实践,开发者可以更好地...

    java多线程简单下载器

    这可能涉及到使用共享变量或`AtomicInteger`等原子类来记录每个线程的进度,同时可能需要`wait()`和`notify()`方法来同步线程。 5. **网络I/O**: 文件下载涉及到网络I/O操作,Java的`java.net`包提供了`Socket`和...

    java多线程编程

    Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,极大地提高了程序的效率和响应性。在Java中,多线程主要通过继承Thread类或实现Runnable接口来实现。本教程将深入探讨Java多线程的各个方面...

    java多线程

    - 熟悉原子变量类(AtomicInteger、AtomicReference等)。 6. 并发编程模式 - 学习生产者-消费者模式、读者-写者模式等典型并发设计模式; - 掌握线程局部变量(ThreadLocal)的使用,理解其在并发环境下的优势...

    java多线程面试题59题集合

    Java多线程是Java编程中的核心概念,它允许程序同时执行多个任务,从而提升系统效率。在面试中,对Java多线程的理解和熟练运用往往成为衡量开发者技能水平的重要标准。以下是对Java多线程面试题59题集合中可能涉及的...

    基于Java多线程与线程安全实践(源码+使用文档)

    基于Java多线程与线程安全实践是一个旨在展示如何在Java环境中高效、安全地使用多线程技术的系统。该系统通过结合源码示例和详细的使用文档,帮助开发者深入理解并实践线程安全的概念。 主要功能 线程安全示例:...

    Java 多线程 订票 示例 线程安全

    总结起来,Java多线程在实现订票系统时,需要注意线程安全问题,通过合理使用同步机制、Lock接口和原子类,可以在保证数据一致性的同时提高并发性能。在实际开发中,要根据业务场景选择合适的线程安全策略,以达到...

    Java多线程与线程安全实践-基于Http协议的断点续传.zip

    总的来说,Java多线程与线程安全实践对于理解和实现基于HTTP协议的断点续传功能至关重要。通过合理地运用多线程、同步机制和原子变量,可以构建出高效、安全的并发应用程序。这个实践项目会深入讲解这些概念,并提供...

    黑马程序员_张孝祥_Java多线程与并发库 视频+代码+资料

    根据给定文件的信息,我们可以提炼出以下关于Java多线程与并发库的相关知识点: ### Java多线程基础 1. **线程的概念**:在Java中,线程是程序执行流的基本单元。一个标准的Java应用程序至少有一个线程,即主...

    深入浅出Java多线程.pdf

    ### 深入浅出Java多线程.pdf #### 知识点概览 本PDF文档涉及了Java多线程的全面介绍,分为基础篇、原理篇和JDK工具篇三个部分,旨在帮助读者深入了解Java多线程的概念、原理及实践应用。 #### 基础篇 **1. 进程...

    Java多线程与线程安全实践-基于Http协议的断点续传

    在本项目“Java多线程与线程安全实践-基于Http协议的断点续传”中,我们将深入探讨如何利用Java的多线程机制实现HTTP协议下的断点续传功能,这对于大文件下载或上传的场景尤为实用。 断点续传是一种允许用户在中断...

    Java多线程编程实战指南+设计模式篇(全部)

    Java提供了多种同步机制,包括`synchronized`关键字、`wait()`和`notify()`方法、`java.util.concurrent`包中的锁(如`ReentrantLock`)以及原子变量(如`AtomicInteger`)。这些工具能有效防止数据竞争,确保线程...

    Java中对AtomicInteger和int值在多线程下递增操作的测试

    这个话题将深入探讨`AtomicInteger`与普通`int`变量在多线程环境下进行递增操作的差异。 `AtomicInteger`是Java `util.concurrent.atomic`包中的一个类,它提供了一种无锁的、线程安全的整数操作方式。在多线程环境...

    java多线程(生产者与消费者)

    Java多线程是一种编程模型,它允许程序同时执行多个任务,从而提高系统效率。在Java中,实现多线程可以通过继承Thread类或者实现Runnable接口来完成。在这个“生产者与消费者”模式中,我们主要关注如何安全地共享...

    多线程demo/java多线程练习

    本项目"多线程demo/java多线程练习"旨在通过实际操作来深入理解和掌握多线程技术,同时模拟数据库操作,这在现代应用程序开发中至关重要。 1. **线程基础** - **创建线程**:Java提供了两种创建线程的方式,分别是...

    java多线程编程总结

    ### Java多线程编程总结 #### 一、Java线程:概念与原理 - **操作系统中线程和进程的概念** 当前的操作系统通常都是多任务操作系统,多线程是一种实现多任务的方式之一。在操作系统层面,进程指的是内存中运行的...

Global site tag (gtag.js) - Google Analytics