如何从Java watchservice注销目录?

如何从Java watchservice注销目录?,java,nio,watchservice,Java,Nio,Watchservice,我向我的watchService注册了一个文件夹: path.register(watchService, ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY); 稍后,我想取消这次注册。我知道我需要告诉watchService我想取消哪个WatchKey。实现这一点的正确函数是什么?register方法返回WatchKey,如中所述,它有一个方法。您在Watchable接口javadoc中有信息,该接口提供注册Watchable对象(例如路径实例)的方法 可观

我向我的watchService注册了一个文件夹:

path.register(watchService, ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY);

稍后,我想取消这次注册。我知道我需要告诉watchService我想取消哪个WatchKey。实现这一点的正确函数是什么?

register方法返回WatchKey,如中所述,它有一个方法。

您在
Watchable
接口javadoc中有信息,该接口提供注册
Watchable
对象(例如
路径
实例)的方法


可观察的公共界面

此接口定义注册对象的注册方法 返回表示注册的WatchKey的WatchService。一 对象可以在多个watch服务中注册。 通过调用密钥的 取消方法


所以你只需要做:

WatchKey watchKey = path.register(watchService, ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY);
...
watchKey.cancel();