public interface WatchKey
WatchService
watchable
对象登记。
一看关键时创建的一个值得注意的对象是一个手表服务注册。关键仍然valid
直到:
一个手表键有一个状态。当最初创建的关键是说要准备好。当一个事件被检测到的关键信号和排队,可以通过调用监视服务的poll
或take
方法检索。一旦发出信号,关键仍然处于这种状态,直到它的reset
方法调用返回到就绪状态的关键。检测到的事件,而关键是在信号状态中的队列,但不导致密钥重新排队,从手表服务的检索。事件被调用的关键的pollEvents
方法检索。此方法检索和删除对象所累积的所有事件。当最初创建时,一个表键没有挂起的事件。通常情况下,事件被检索时,关键是在信号状态导致下面的成语:
为(;;)/检索键watchkey关键=守望者。take();/ /处理事件对于(watchevent <?>事件:关键。pollevents()){:}/重置键布尔有效=关键。reset();如果(!有效){不再注册的对象}}
观看键是安全的,使用多个并发线程。那里有几个线程检索表示钥匙手表服务则应注意确保reset
方法只被调用后,该对象的事件已处理。这确保一个线程正在处理对象的事件在任何时间。
Modifier and Type | Method and Description |
---|---|
void |
cancel()
取消手表服务的注册。
|
boolean |
isValid()
告诉是否这个表密钥是有效的。
|
List<WatchEvent<?>> |
pollEvents()
检索并移除所有悬而未决的事件,这表键,返回
List 撷取的事件。
|
boolean |
reset()
重置该关注的关键。
|
Watchable |
watchable()
返回创建此表键的对象。
|
boolean isValid()
手表键在创建和保留时有效,直到它被取消,或者它的监视服务关闭。
true
如果,如果,这只表是有效的
List<WatchEvent<?>> pollEvents()
List
撷取的事件。
请注意,此方法不等待是否有任何事件悬而未决。
boolean reset()
如果此表键已被取消,或此表键已处于就绪状态,则调用此方法没有任何效果。否则,如果有挂起的事件的对象,然后这个表的关键是立即重新排队到手表服务。如果没有挂起的事件,则观看键进入准备状态,并将保持在该状态,直到检测到事件或观看键被取消。
true
如果手表的关键是有效的和已复位,并
false
如果手表钥匙不能复位,因为它不再是
valid
void cancel()
pollEvents
方法后关键是取消检索。
如果这个表键已经被取消,那么调用这个方法没有任何效果。一旦取消,一个表键仍然无效。
Watchable watchable()
作为WatchService
旨在直接映射到本地文件的事件通知机制(如适用)那么许多如何注册对象的细节看是高度的具体实施。当监视示例的目录更改时,文件系统中的目录被移动或重命名,没有保证表键将被取消,因此该方法返回的对象将不再是目录的有效路径。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.