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

html制作一个个人主页网站wordpress首页调用指定文章

html制作一个个人主页网站,wordpress首页调用指定文章,化妆品行业网站建设方案,全国企业信息查询系统登录一、前言 synchronized 关键字是 Java 实现线程同步的核心机制。用于解决多线程环境下的资源竞争问题,保证线程安全。 二、关键作用 1.同步方法 public class Counter {private int count 0;// 同步方法(实例方法)public synchronized vo…

一、前言

  • synchronized 关键字是 Java 实现线程同步的核心机制。
  • 用于解决多线程环境下的资源竞争问题,保证线程安全

二、关键作用

1.同步方法

public class Counter {private int count = 0;// 同步方法(实例方法)public synchronized void increment() {count++;}// 同步静态方法public static synchronized void staticMethod() {// 操作静态变量}
}
  • 实例方法:锁对象是当前实例(this),同一时刻只有一个线程能访问该实例的同步方法
  • 静态方法:锁对象是类的 Class 对象(如 Counter.class),锁住所有调用该静态方法的线程

2.同步代码块

public void doSomething() {// 非同步代码synchronized(this) { // 锁对象可以是任意对象// 需要同步的代码}
}
  • 更细粒度控制,允许仅同步关键代码段(临界区)
  • 锁对象可以是 this、Class 对象或自定义对象

三、实际应用(代码示例)

  • 假设需要对银行账户进行相关操作:
class BankAccount {private int balance = 1000;// 同步取款方法public synchronized void withdraw(int amount) {if (balance >= amount) {System.out.println(Thread.currentThread().getName() + " 取款:" + amount);balance -= amount;}}public int getBalance() {return balance;}
}public class Main {public static void main(String[] args) throws InterruptedException {BankAccount account = new BankAccount();// 创建两个线程同时取款Thread t1 = new Thread(() -> {for (int i = 0; i < 100; i++) {account.withdraw(10);}}, "线程1");Thread t2 = new Thread(() -> {for (int i = 0; i < 100; i++) {account.withdraw(10);}}, "线程2");t1.start();t2.start();t1.join();t2.join();System.out.println("最终余额:" + account.getBalance()); // 正确结果应为 0}
}

四、关键特性

  • 可重入性:线程获得锁后可以重复获取同一把锁 。
  • 内存可见性:synchronized 会触发内存屏障,保证变量修改对后续线程可见
  • 互斥性:同一时刻只有一个线程能持有锁。

五、注意事项

  • 避免锁住非 final 对象(可能被重新赋值导致锁失效) 。
  • 不要锁字符串常量(可能与其他代码意外共享锁) 。
  • 优先使用同步代码块缩小同步范围 。
  • Java 5+推荐使用 java.util.concurrent 包中的更高级并发工具(如 ReentrantLock)。
  • 通过合理使用 synchronized,可以有效解决多线程环境下的线程安全问题。
  • 过度使用会导致性能下降,需在安全性和性能之间权衡。
http://www.dtcms.com/a/415464.html

相关文章:

  • 安宝特科技丨【行业首发】Vuzix LX1智能眼镜:仓储物流的下一代智能助手
  • 无锡建行网站重庆网站备案最快几天
  • 河津网站建设湖南建设工程信息网官网
  • Ubuntu服务器版增加中文支持
  • 宁波网站推广营销江苏中南建设集团网站是多少
  • 那些网站企业可以免费展示动画制作软件flash官方下载
  • C++笔记(面向对象)类的定义
  • 电子信息工程专业课《数字信号处理》课程简介
  • 【攻防实战】对抗中的特殊场景上线cs和msf
  • 如何利用网站做demo北京公司网站建设报价
  • 显存带宽瓶颈突破:基于TensorRT的实时4K视频渲染优化
  • 陕西网站制作公司宁波网站建设排名
  • 网站开发设计会议网站怎么做
  • OpenHarmony中的系统服务管理配置讲解
  • 如何接做网站编程的生意做a免费网站有哪些
  • 王玉真:可信资产与数链金融的核心根基——构建全链路可信信用体系
  • 网页制作与网站建设文档石家庄seo排名公司
  • C#语言——类型、变量与对象
  • 网络科技公司 网站建设网站 公司形象
  • 黑龙江省网站建设百度里面企业网站怎么建设
  • 【Qt】输入类控件1——QLineEdit,QTextEdit,ComboBox
  • 一家专门做内部优惠的网站石柱县建设局网站
  • 网站制作需要什么知识网站的维护和推广
  • 容器主机名解析在香港服务器内部网络的调试方案
  • Facebook相关jsj加密接口
  • 技术支持 鼎维重庆网站建设专家家用电脑可以做网站服务器
  • 网站建设七点二维码制作网站有哪些
  • [创业之路-607]:半导体行业供应链 - 采矿/化工 - 稀有和关键金属
  • 【OpenHarmony实战】系统参数SystemParameter完全指南:param get/set调试技巧与案例精解
  • 大型网站的空间广州营销型网站建设公司哪家名气大