网络安全

位置:IT落伍者 >> 网络安全 >> 浏览文章

Java的线程安全四种方式五个等级[1]


发布日期:2024年07月06日
 
Java的线程安全四种方式五个等级[1]

四种方式 sychronized关键字

sychronized method(){}

sychronized (objectReference) {/*block*/}

static synchronized method(){}

sychronized(classnameclass)

其中是代表锁当前对象即一个对象就一个锁代表锁这个类即这个类的锁

要注意的是sychronized method()不是锁这个函数而是锁对象如果这个类中有两个方法都是sychronized那么只要有两个线程共享一个该类的reference每个调用这两个方法之一不管是否同一个方法都会用这个对象锁进行同步锁类的类推即该类的不同reference调用了sychronized区段的咚咚就会受类锁的控制

还有如果两个函数调用的先后顺序不能被打断那么可以有个专门的锁对象来完成这个任务

class MyLock

{

synchronized getLock()

{

//####还没写完

}

}

五个等级 参见effective java Item : Document thread safety

[] []

               

上一篇:Java的线程安全四种方式五个等级[2]

下一篇:Java理论与实践: 描绘线程安全性[2]