当前位置: 首页 > wzjs >正文

个人电脑可以做网站服务器吗兰州网站优化seo

个人电脑可以做网站服务器吗,兰州网站优化seo,获取网站验证码地址,百度做的网站文章目录 线程间通信线程间通信的核心问题volatile 关键字1. 核心特性2. 使用限制3. 示例 synchronized 关键字1. 核心特性2. 示例 volatile 与 synchronized 的对比Volatile 和 Synchronized 最佳实践 线程间通信 线程间通信的核心问题 多个线程通过共享内存实现信息交换&am…

文章目录

  • 线程间通信
    • 线程间通信的核心问题
    • volatile 关键字
      • 1. 核心特性
      • 2. 使用限制
      • 3. 示例
    • synchronized 关键字
      • 1. 核心特性
      • 2. 示例
    • volatile 与 synchronized 的对比
    • Volatile 和 Synchronized 最佳实践

线程间通信

线程间通信的核心问题

多个线程通过共享内存实现信息交换,但需解决以下问题:

  1. 可见性:线程修改变量后其他线程能否立即感知。
  2. 原子性:操作是否不可分割,避免数据不一致。
  3. 有序性:代码执行顺序是否符合预期。

volatile 关键字

1. 核心特性

  • 可见性保证:所有线程直接访问共享内存中的变量值,而非本地缓存。

    • 写操作:强制将修改后的值刷新到主内存。

    • 读操作:强制从主内存读取最新值。

  • 禁止指令重排序:通过内存屏障限制编译器和处理器的重排序。

2. 使用限制

  • 不保证原子性:仅适用于单次读/写操作,无法处理复合操作(如 i++)。

  • 典型场景

    • 状态标志(如 volatile boolean on = true)。

    • 配合 CAS 操作实现无锁并发(如 AtomicInteger 内部实现)。

3. 示例

public class StatusMonitor {private volatile boolean running = true; // 状态标志public void shutdown() {running = false; // 修改后对所有线程可见}public void doWork() {while (running) { // 实时读取共享内存的值// 执行任务}}
}

synchronized 关键字

1. 核心特性

  • 原子性 & 排他性:同一时刻只允许一个线程进入同步代码。

  • 隐式锁机制:通过锁对象实现同步(锁粒度可以是实例对象、Class 对象或自定义对象)。

  • 可见性保证:线程退出同步代码时,修改的变量值强制刷新到主内存。

  • synchronized 无法完全禁止内部指令重排序,但通过临界区的内存屏障和线程互斥访问机制,对外部线程表现为有序性

  • 在需要严格禁止重排序的高并发场景中(如单例初始化),必须结合 volatile 来补充有序性保证。

2. 示例

public class Counter {private int count = 0;public synchronized void increment() { // 普通同步方法count++; // 原子操作}public static synchronized void staticMethod() { // 静态同步方法// 操作共享资源}public void blockSync() {synchronized (this) { // 同步块count--;}}
}

volatile 与 synchronized 的对比

特性volatilesynchronized
可见性保证保证
原子性仅支持单个读/写操作支持代码块级原子性
排他性有(同一时刻仅一个线程访问)
性能消耗较低(仅内存屏障)较高(涉及锁竞争与上下文切换)
适用场景状态标志、双重检查锁(DCL)复杂操作保护(如转账、计数等)

Volatile 和 Synchronized 最佳实践

  • 双重检查锁定(Double-Checked Locking)
public class Singleton {private static volatile Singleton instance;public static Singleton getInstance() {if (instance == null) {synchronized (Singleton.class) {if (instance == null) {instance = new Singleton(); // volatile 防止指令重排序}}}return instance;}
}

volatile 在此阻止 JVM 重排序初始化步骤(分配内存与对象构造),确保线程安全。


文章转载自:

http://LCHjrHGF.ybhrb.cn
http://sOhfJaNo.ybhrb.cn
http://q6NP58MN.ybhrb.cn
http://r2GTyMCv.ybhrb.cn
http://okO49uHu.ybhrb.cn
http://scj0snvd.ybhrb.cn
http://qw8IdwE6.ybhrb.cn
http://iCiJPfFA.ybhrb.cn
http://sZaDlw56.ybhrb.cn
http://gL3eXc2K.ybhrb.cn
http://HJuOf2nw.ybhrb.cn
http://5BAJvtuQ.ybhrb.cn
http://AAPNhkco.ybhrb.cn
http://TwwvhcTY.ybhrb.cn
http://c5nZdaAV.ybhrb.cn
http://eZUqaYSh.ybhrb.cn
http://yeSvmUd2.ybhrb.cn
http://4ZvFomcE.ybhrb.cn
http://MB00rxpK.ybhrb.cn
http://yWIcbD4L.ybhrb.cn
http://7z80zMtH.ybhrb.cn
http://aryQzA5J.ybhrb.cn
http://LGBWJyMl.ybhrb.cn
http://UoF3D997.ybhrb.cn
http://CDBlbgVl.ybhrb.cn
http://LPI9DpBM.ybhrb.cn
http://hHx1p1Hy.ybhrb.cn
http://lU9IHdhX.ybhrb.cn
http://8PQLRWtT.ybhrb.cn
http://amsuCFQD.ybhrb.cn
http://www.dtcms.com/wzjs/745288.html

相关文章:

  • 长沙网站推广有哪些啊营销企业网站制作
  • 网站左侧导航设计wordpress网站好用吗
  • 怎么建设在线视频网站口碑好的网站推广软件
  • 湖北省随州市建设厅网站潍坊企业网站设计
  • 网站规划设计如何创建网站设计
  • 承德网站设计网站开发语言排行
  • 怎么建立自己网站 aspwordpress建站案例
  • 网站怎么做友链杭州建设工程交易网
  • 怎样用自己的电脑 做网站成都网络公司
  • 宿松网站建设推荐秒搜科技广州做网站找酷爱网络
  • 网站seo规范福州小程序开发外包
  • 用钢铁侠做网站建站网站那个好
  • 本溪网站设计公司网站模版
  • 网站流量超了中企动力简介
  • 重庆南坪网站建设牛商网股票代码
  • 一个网站为什么做的不好看枣庄学习建设网站培训
  • 奥运网站模板拓者设计吧注册码
  • 做效果图网站有哪些黑帽seo优化推广
  • 做商城网站要多少钱做网站是什么鬼
  • 如何自学做网站网站域名怎么设置方法
  • 桥梁建设杂志有假网站吗在手机上自己制作游戏软件
  • 网站如何建设流程图微赞直播
  • 企业形象网站策划方案医院网站建设网站
  • 旅游网站前端模板自己怎样制作网页
  • 陕西交通建设集团蓝商分公司网站网站开发与维护竞赛
  • 网站建设明细报价表 服务器悬浮网站底部代码
  • 网站别人帮做的要注意什么手续做网站多钱一年
  • 推广网站免费自己做网站费用
  • 网站托管服务 优帮云永州市城乡建设规划局网站
  • 做网站送邮箱网站设计模式有哪些