标签: java multithreading conditional-statements reentrantlock
例如,两个线程(Informer和Watcher)使用相同的列表。通知者在List中添加数据,并且如果集合为空或Informer访问列表,则Watcher无法读取集合。 如果Informer调用函数Condition.signal()但未创建或未启动Watcher(Watcher未调用Condition.await()),将会发生什么?
答案 0 :(得分:1)
是的,即使没有等待线程也可以调用signal。等待中的线程将丢失此信号,并且在调用await()时将被阻塞。
signal
await()