做网站的好处好网站的标准

张小明 2026/1/17 18:58:10
做网站的好处,好网站的标准,修改wordpress 表格,做视频网站虚拟主机怎么选上述规约是一个关于Java并发编程的重要问题。本篇博文我来详细解释一下#xff1a; 1. volatile的内存可见性 volatile的作用#xff1a; 保证可见性#xff1a;当一个线程修改了volatile变量的值#xff0c;新值会立即刷新到主内存#xff0c;其他线程读取时会从主内存重…上述规约是一个关于Java并发编程的重要问题。本篇博文我来详细解释一下1.volatile的内存可见性volatile的作用保证可见性当一个线程修改了volatile变量的值新值会立即刷新到主内存其他线程读取时会从主内存重新获取最新值禁止指令重排序防止JVM的指令重排序优化示例publicclassVolatileExample{privatevolatilebooleanflagfalse;publicvoidwriter(){flagtrue;// 写操作}publicvoidreader(){if(flag){// 读操作// 一定能看到最新值}}}2.为什么volatile不能解决多写问题publicclassCounter{privatevolatileintcount0;// 多线程调用会有问题publicvoidincrement(){count;// 不是原子操作读→改→写}}问题分析线程A读取count0 线程B读取count0 线程Acount11写回 线程Bcount11写回 // 结果应该是2实际是13.解决方案对比方案1AtomicIntegerimportjava.util.concurrent.atomic.AtomicInteger;publicclassAtomicExample{privateAtomicIntegercountnewAtomicInteger(0);publicvoidincrement(){count.incrementAndGet();// 原子操作}publicintget(){returncount.get();}}原理基于CASCompare And SwappublicfinalintincrementAndGet(){returnunsafe.getAndAddInt(this,valueOffset,1)1;}// 实际是自旋CAS操作方案2LongAdderJDK8推荐importjava.util.concurrent.atomic.LongAdder;publicclassLongAdderExample{privateLongAddercountnewLongAdder();publicvoidincrement(){count.increment();// 性能更好}publiclongsum(){returncount.sum();}}4.性能对比分析特性AtomicLongLongAdder原理CAS自旋分段CAS高并发写性能一般优秀读性能O(1)O(N)需要合并内存占用低较高适用场景读写均衡写多读少5.完整示例importjava.util.concurrent.atomic.AtomicInteger;importjava.util.concurrent.atomic.LongAdder;importjava.util.concurrent.CountDownLatch;publicclassCounterComparison{// 方案1volatile不安全privatevolatileintvolatileCount0;// 方案2AtomicIntegerprivateAtomicIntegeratomicCountnewAtomicInteger(0);// 方案3LongAdderJDK8推荐privateLongAdderadderCountnewLongAdder();publicvoidtestVolatile()throwsInterruptedException{CountDownLatchlatchnewCountDownLatch(100);for(inti0;i100;i){newThread(()-{for(intj0;j1000;j){volatileCount;// 线程不安全}latch.countDown();}).start();}latch.await();System.out.println(Volatile结果可能不正确: volatileCount);}publicvoidtestAtomic()throwsInterruptedException{CountDownLatchlatchnewCountDownLatch(100);for(inti0;i100;i){newThread(()-{for(intj0;j1000;j){atomicCount.incrementAndGet();}latch.countDown();}).start();}latch.await();System.out.println(AtomicInteger结果: atomicCount.get());}publicvoidtestLongAdder()throwsInterruptedException{CountDownLatchlatchnewCountDownLatch(100);for(inti0;i100;i){newThread(()-{for(intj0;j1000;j){adderCount.increment();}latch.countDown();}).start();}latch.await();System.out.println(LongAdder结果: adderCount.sum());}publicstaticvoidmain(String[]args)throwsInterruptedException{CounterComparisontestnewCounterComparison();test.testAtomic();test.testLongAdder();test.testVolatile();}}6.使用建议单写多读使用volatile低竞争环境使用AtomicInteger/AtomicLong高并发写场景使用LongAdderJDK8精确统计场景使用Atomic系列LongAdder的sum()可能不是实时精确值总结volatile只解决可见性问题不解决原子性问题对于count这类复合操作必须使用原子类在JDK8的高并发写场景下LongAdder性能通常优于AtomicLong选择哪个工具取决于具体的读写比例和并发程度
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

校园网站如何管理深圳最大的公司排名

你是否遇到过这样的困扰:电脑的安全中心突然显示异常,Windows Defender无法正常工作,系统安全防护功能受到影响?这种情况往往让人措手不及,但别担心,通过本文的Windows Defender恢复指南,你将掌…

张小明 2026/1/8 22:07:34 网站建设

网站链接推广怎么做网站建设详细方案

深度优化:VideoRenderer中Dolby Vision到HDR显示器的技术实践 【免费下载链接】VideoRenderer Внешний видео-рендерер 项目地址: https://gitcode.com/gh_mirrors/vi/VideoRenderer 在Windows视频播放生态中,HDR内容的正确处…

张小明 2026/1/12 4:49:16 网站建设

大连建站价格兴力网站建设

Qwen3-VL-4B-Instruct震撼发布:多模态AI新纪元,重塑视觉语言交互范式 【免费下载链接】Qwen3-VL-4B-Instruct-bnb-4bit 项目地址: https://ai.gitcode.com/hf_mirrors/unsloth/Qwen3-VL-4B-Instruct-bnb-4bit 在人工智能技术飞速迭代的今天&…

张小明 2026/1/9 8:11:52 网站建设

网站流量大小对网站有什么影响浙江建设厅网站 打不开

一、项目介绍 随着太阳能产业的快速发展,太阳能电池板的质量检测成为保障光伏系统高效运行的关键环节。传统的人工检测方法效率低且易受主观因素影响,而基于深度学习的智能检测技术能够大幅提升缺陷识别的准确性和自动化程度。本研究提出了一种基于YOLO…

张小明 2026/1/9 6:30:51 网站建设

佛山微网站建设 天博越城网站建设公司

Excalidraw热力图模拟:用户行为分布示意 在产品设计的日常讨论中,你是否曾遇到这样的场景?产品经理拿着一份PPT中的热力图说:“这个按钮点击率很低”,但团队成员却一脸困惑——因为那张图脱离了真实界面语境&#xff0…

张小明 2026/1/11 16:10:31 网站建设

网站维护要求上海工商查询网

多场景适配利器:一个工具同时搞定图文生成与文本生成LoRA 在AI创作的浪潮中,我们常常面临这样一个现实:通用大模型虽然强大,却总差那么“一口气”——它画不出你心中那种独特的赛博朋克光影,也写不出符合品牌调性的广告…

张小明 2026/1/13 10:04:53 网站建设