企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] # 同步代码块 同步代码块: 在代码块声明上 加上synchronized ~~~ synchronized (锁对象) { 可能会产生线程安全问题的代码 } ~~~ 同步代码块中的锁对象可以是任意的对象;但多个线程时,要使用同一个锁对象才能够保证线程安全。 在方法中,对可能出错的加上 ~~~ synchronized (lock){ } ~~~ 成员中定义 ~~~ //定义锁对象 Object lock = new Object(); ~~~ # 同步方法 * 同步方法:在方法声明上加上synchronized ~~~ public synchronized void method(){ 可能会产生线程安全问题的代码 } ~~~ **同步方法中的锁对象是 this** * 静态同步方法: 在方法声明上加上static synchronized ~~~ public static synchronized void method(){ 可能会产生线程安全问题的代码 } ~~~ **静态同步方法中的锁对象是 类名.class**