作者rudolf1238 (Yo)
看板java
標題[問題] 利用Thread呼叫JNotify無反應
時間Sun Mar 24 16:42:50 2013
各位版友好,我目前想用JNotify套件來監聽文件夾檔案更動,
官方網站在此
http://jnotify.sourceforge.net/
原本由main方法呼叫JNotify.addWatch(strDir,intMask,booWatchSubtree,Listener);
但由於特定因素我利用thread來呼叫addWatch方法,
但卻沒辦法讀取到Listener的方法,原本在main中呼叫addWatch()是可以執行的,
試過用thread.isAlive跟isInterrupted來測試,可是都顯示沒問題,
不知道大家有什麼建議可以測試到底是哪裡出問題了?
或是我有哪裡出現嚴重錯誤導致無法執行呢? 謝謝大家。
以下有簡單範例說明:
main.java================================================
ThreadForJNotify t = new ThreadForNotify();
t.start();
================================================main.java
ThreadForJNotify.java extends Thread=====================
JNotify.addWatch(strDir,intMask,booWatchSubtree,new Listener());
====================================ThreadForJNotify.java
Listener.java implements JNotifyListener=================
public void fileRenamed(){ do something... }
public void fileModified(){ do something... }
public void fileDeleted(){ do something... }
public void fileCreated(){ do something... }
===========================================Listener.java
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.120.54.165
※ 編輯: rudolf1238 來自: 140.120.54.165 (03/24 16:44)
→ pico2k:addwatch 有放在thread的run函數裡面? 03/24 19:26
→ rudolf1238:是的,放在run()函數內,前後都有測試print皆有執行到 03/24 19:57
推 KOFXI:不好意思 我發的那篇文章發現是錯的 所以先刪掉 03/29 22:37