NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
[TOC] # 同步代码块 同步代码块: 在代码块声明上 加上synchronized ~~~ synchronized (锁对象) { 可能会产生线程安全问题的代码 } ~~~ 同步代码块中的锁对象可以是任意的对象;但多个线程时,要使用同一个锁对象才能够保证线程安全。 在方法中,对可能出错的加上 ~~~ synchronized (lock){ } ~~~ 成员中定义 ~~~ //定义锁对象 Object lock = new Object(); ~~~ # 同步方法 * 同步方法:在方法声明上加上synchronized ~~~ public synchronized void method(){ 可能会产生线程安全问题的代码 } ~~~ **同步方法中的锁对象是 this** * 静态同步方法: 在方法声明上加上static synchronized ~~~ public static synchronized void method(){ 可能会产生线程安全问题的代码 } ~~~ **静态同步方法中的锁对象是 类名.class**