有需求需要监控本地文件或者目录的变化情况,然后做一些操作,在linux上已经有了很好的支持。
Linux: inotify
http://www.linuxjournal.com/article/8478?page=0,0
然而java io中在JDK 6中还没实现,倒是JDK 7的NIO 2中实现了,针对增加这个file notify的需求早在01年就提了bug给sun, http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4526561。
JDK 7中针对IO还增加了其他新特性,见
The Java NIO.2 File System in JDK 7
http://java.sun.com/developer/technicalArticles/javase/nio/
http://download.oracle.com/javase/tutorial/essential/io/
针对File Notify这个在JDK 7的NIO2中叫 WatchService,也有一篇文章讲述他的用法
Watching A Directory for Changes — File Change Notification in NIO.2
http://blogs.sun.com/thejavatutorials/entry/watching_a_directory_for_changes
不过如果目前使用的话,倒是可以使用一个对inotify的java包装版本 jnotify,不过最近也不更新维护了(应该也够用了)
分享到:
相关推荐
Java之wait和notify的用法详解 在Java多线程编程中,wait和notify是两个非常重要的方法,它们都是Object类的方法,用于线程之间的通信和同步。下面我们将详细解释wait和notify的用法。 wait方法 wait方法是Object...
标题 "FileNotify.rar_CE 2005_Win CE SDK_filenoti_notify_win CE 5" 暗示了这是一个关于Windows CE操作系统中文件通知功能的开发资源包,主要用于Windows CE 5.0版本。这个资源可能包含了在Windows CE平台上实现...
this is very usefull for you to develop it.
`wait()`、`notify()`和`notifyAll()`是Java中的三个关键字,它们属于Object类的方法,主要用于线程间的通信,尤其在实现生产者消费者模式时发挥着重要作用。本文将深入探讨这些方法以及如何在实际场景中应用它们。 ...
3. **事件处理**:`FileMonitor`将事件处理的逻辑封装在内部,使得外部代码不必直接与`WatchKey`和`WatchEvent`打交道。这种设计使得开发者可以专注于业务逻辑,而不用关心底层的事件模型。 4. **异步处理**:为了...
在Java中,`wait()`, `notify()`, 和 `notifyAll()` 是Java Object类的三个方法,它们在实现线程间通信和协作时扮演着关键角色。这些方法主要用于解决线程等待和唤醒的问题,是基于Java Monitor(监视器)模型的。 ...
在Java中,`wait()` 和 `notify()` 方法是实现线程间通信和协作的重要工具,它们属于 `java.lang.Object` 类,这意味着所有类都默认继承了这两个方法。本文将详细探讨如何使用 `wait()` 和 `notify()` 来控制子线程...
源码—Java多线程5—死锁和wait notify notifyAll
wait()、notify()和notifyAll()方法2---马克-to-win java视频
`synchronized`关键字、`wait()`和`notify()`方法是Java多线程中用于控制并发访问共享资源的重要工具,它们是Java内存模型(JMM)的一部分,主要用于解决线程间的同步问题。 一、`synchronized`关键字 `...
标题和描述概述的知识点主要集中在Java的多线程机制中,特别是`wait`和`notify`方法在同步锁中的应用。这些方法对于控制线程之间的交互至关重要,尤其是在资源有限或需要确保数据一致性的情况下。 ### Java同步锁...
在Java的多线程编程中,`notify()`与`wait()`是实现线程间通信的重要方法,它们主要用于解决生产者消费者问题、读者写者问题等典型同步问题。这两个方法定义在`Object`类中,因此所有Java对象都可以作为锁来使用。在...
佳明手表(Garmin watch)是一款深受运动爱好者和科技迷喜爱的智能穿戴设备,它集健康监测、运动追踪、智能通知等多种功能于一体。Image Notify APP是专为佳明手表设计的一款第三方应用程序,开发者出于对佳明手表的...
JAVAWAIT和NOTIFY的用法.pdf
Java多线程中wait、notify、notifyAll使用详解 Java中多线程编程中,wait、notify、notifyAll三个方法是非常重要的,它们都是Object对象的方法,用于线程之间的通信。下面我们将详细介绍这三个方法的使用和作用。 ...
Java程序并发的Wait-Notify机制是Java多线程编程中的一种重要同步工具,它允许线程之间通过共享对象进行通信和协作。这个机制基于Java的内置锁(也称为监视器锁),通常与`synchronized`关键字一起使用。在Java中,`...
Java中的`notify`和`notifyAll`方法是多线程编程中的重要概念,它们都是`Object`类的方法,用于在同步控制中唤醒等待在特定对象监视器上的线程。理解这两个方法的区别对于编写高效的并发代码至关重要。 首先,`...
_java多线程wait、notify机制详解_ 在Java多线程编程中,wait和notify是两个非常重要的机制,用于实现线程之间的通信和同步。在本文中,我们将通过示例代码详细介绍Java多线程wait和notify的使用,帮助读者更好地...
在 Java 中可以用 wait、notify 和 notifyAll 来实现线程间的通信。。举个例子,如果你的Java程序中有两个线程——即生产者和消费者,那么生产者可以通知消费者,让消费者开始消耗数据,因为队列缓冲区中有内容待...
本文旨在解析一个具体的Java多线程示例代码,以帮助读者更好地理解`wait()`与`notify()`方法的作用及其实现机制。这两个方法是Java中实现线程间通信的重要手段之一,尤其在解决生产者消费者模型、读者写者问题等经典...