看板 java 關於我們 聯絡資訊
各位版友好,我目前想用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