是否可以同步netty中一组频道发生的所有事件。我尝试使用OrderedMemoryAwareThreadPoolExecutor
实现此目的,但并非所有事件都是synchronized
。您能否为synchronize
一组频道的所有活动建议任何方法。
谢谢
答案 0 :(得分:1)
我相信你想要的东西在java中被称为Condition。
使用
初始化final Lock lock = new ReentrantLock();
final Condition cond = lock.newCondition();
在您使用的所有功能中,您需要先锁定锁,并确保可以释放它:
lock.lock();
try {
// do you stuff...
} finally {
lock.unlock();//interrupt or not, release lock
}
在您想等待的所有地方,请致电
cond.await();
当满足所有条件需要继续时,请致电
cond.signal();