在java ee @Singleton中是否有@Lock(READ)和@Lock(WRITE)的并发管理机制,如果没有,我怎样才能使用java se并发功能实现它。
答案 0 :(得分:0)
java ee @Singleton中是否存在@Lock(READ)和@Lock(WRITE)的并发管理机制?
我不确定你的意思。 @Lock(READ)
或@Lock(WRITE)
是一种Java EE并发机制,可供@Singleton
如果没有,我怎样才能使用java se并发功能来实现它。
您可以使用java.util.concurrent.locks.ReadWriteLock
这是Java SE功能之一。
例如:
final ReadWriteLock lock = new ReentrantReadWriteLock();
// equivalent to using @Lock(LockType.READ)
public void readData() {
lock.readLock().lock();
try {
// read some data
} finally {
lock.readLock().unlock();
}
// equivalent to using @Lock(LockType.WRITE)
public void writeData() {
lock.writeLock().lock();
try {
// write some data
} finally {
lock.writeLock().unlock();
}