package com.tongbanjie.trade.test.base;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
/**
* 测试并发累加
* @author huangqun
*
*/
public class TestConcurrentPlusPlus {
public static int count = 0;
public volatile static int volatileCount = 0;
public static int synchronizedCount = 0;
public static AtomicInteger atomicCount = new AtomicInteger(0);
public volatile static AtomicInteger volatileAtomicCount = new AtomicInteger(0);
public static void main(String[] args) {
final Object lock = new Object();
for (int i = 0; i < 50000; i++) {
new Thread(new Runnable() {
@Override
public void run() {
count++;
volatileCount++;
synchronized (lock) {
synchronizedCount++;
}
atomicCount.incrementAndGet();
volatileAtomicCount.incrementAndGet();
}
}).start();
}
// 休息5秒, 保证线程中的计算完成
try {
TimeUnit.SECONDS.sleep(5);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("线程并发执行对计数器累计5000次,看并发结果!");
System.out.println("count=" + count);
System.out.println("volatileCount=" + volatileCount);
System.out.println("synchronizedCount=" + synchronizedCount);
System.out.println("atomicCount=" + atomicCount.get());
System.out.println("volatileAtomicCount=" + volatileAtomicCount.get());
}
}
分享到:
相关推荐
MySQL Innodb锁解决并发问题
这个Demo演示了使用redis乐观锁机制解决高并发环境下出现连接超时与超卖(库存出现负数)情况的解决办法。
Impala并发查询缓慢问题解决方案.docx
本文实例讲述了C#解决SQlite并发异常问题的方法。分享给大家供大家参考,具体如下: 使用C#访问sqlite时,常会遇到多线程并发导致SQLITE数据库损坏的问题。 SQLite是文件级别的数据库,其锁也是文件级别的:多个线程...
高并发解决方案
这几天在研究服务器的并发性能,当服务的方法需要执行长时间的任务时,发现WCF宿主到Console程序,... 最后问题已经解决了,参考资源中的文件:关于WCF 自我寄宿(Self-Hosting) 执行长时间任务并发问题_解决及源码.doc
该示例解决了发送多个Ajax请求时引起的并发问题
高并发场景下,如何解决数据库与缓存双写的时候数据不一致的情况?如何解决大value缓存的全量更新效率低下问题?
1、高并发下服务稳定性。流量削峰:LRUK(自动识别&存储热点数据,QPS增加4倍,响应时间未见变化)、被动限流降压(中间层A系统并发平均降了14w/分钟,最高降了23w/分钟,回收了7台虚拟机(共21台)) 、操作异步化、分流...
主要介绍了Java系统的高并发解决方法,内容十分丰富,在这里分享给大家,需要的朋友可以参考。
互联网高并发解决方案互联网高并发解决方案互联网高并发解决方案
用户角度:网站打不开服务器雪崩:通过表设计,如:记录表添加唯一约束,数据处理逻辑使用事物防止并发下的数据错乱问题。通过服务端锁进程防止包并发下的数据错乱问题。这里主要讲述的是在并发请求下的数据逻辑处理...
Socket通讯解决并发采用线程池ThreadPool.java EchoServer.java EchoClient.java
主要介绍了MySQL 如何处理高并发,帮助大家更好的优化MySQL数据库,感兴趣的朋友可以了解下
本文来自于csdn,本文主要从分布式的原因,事务特性,和解决方案中深入理解了分布式事务,希望对您的学习有所帮助。 分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的...
常见的提高高并发下访问的效率的手段,了解高并发的的瓶颈在哪里,具体的高并发解决方案
java 高并发解决思路 文档中涉及到很多实例
Java并发编程与高并发解决方案-学习笔记