如何使Java代码在事件发生后暂停并恢复而不进行轮询

如何使Java代码在事件发生后暂停并恢复而不进行轮询,java,file,queue,wait,polling,Java,File,Queue,Wait,Polling,我在两个应用程序中工作。 在第一个示例中,我需要检测文件或文件夹是否已被修改。我希望在不连续轮询文件以节省系统资源的情况下执行此操作。我一直在看GoogleDrive程序,它不消耗任何资源,而同步文件夹没有修改,这在java中可能吗 最后,我尝试实现一个输入流,该输入流从队列读取字符,直到它找到新的行字符“\n”。如果队列是空的,我想让它暂停,直到再次填充为止,如果不连续检查队列是否为空,怎么能做到这一点?请记住,InputStream应该在获取数据时暂停程序的执行。1-签出;2-检查-不知道这

我在两个应用程序中工作。 在第一个示例中,我需要检测文件或文件夹是否已被修改。我希望在不连续轮询文件以节省系统资源的情况下执行此操作。我一直在看GoogleDrive程序,它不消耗任何资源,而同步文件夹没有修改,这在java中可能吗


最后,我尝试实现一个输入流,该输入流从队列读取字符,直到它找到新的行字符“\n”。如果队列是空的,我想让它暂停,直到再次填充为止,如果不连续检查队列是否为空,怎么能做到这一点?请记住,InputStream应该在获取数据时暂停程序的执行。

1-签出;2-检查-不知道这一个是否有用+1!解决方案1是完美的方式!但要小心:在windows中,您可以在一个监视程序中监视目录及其子目录和文件,而在linux中,您必须单独监视所有文件!这正是我想要的,非常感谢。