我在分佈式系統的大學課程中正在執行一個項目。我正在計劃創建類似於Dropbox(getdropbox.com)的東西,但是會有一些非集中的點對點轉換。爲此,我需要一些檢測目錄結構變化的方法。你如何看待Dropbox做到這一點?他們的實施工作非常好。我想知道他們是否使用Windows上的win32 api中的FileSystemWatcher,以及類似的和依賴於Linux和Mac的平臺。如何查看文件系統以進行更改
3
A
回答
1
據我所知,DropBox的(等)採用的是Windows服務(或Linux/Mac端的守護進程)來監視文件系統。在.Net中創建這種方法非常簡單,這種情況通常是Windows服務的教科書示例。我相信在C++中做類似的事情也是相當直接的。
下面是一個關於如何在Windows上創建服務的.Net簡單教程的鏈接。你需要爲你的解決方案做的所有事情是在Timer.Tick()事件中添加你的監視器邏輯。
4
在Mac OS X Leopard中還有的FSEvents API,可以讓你的文件系統更改的通知登記:
http://googlemac.blogspot.com/2008/03/file-system-change-logger-for-leopard.html
3
在Linux方面,有個可怕的無證inotify的。如果你不介意使用glib,那麼GFileMonitor類很容易使用。我認爲它不是可移植的,所以它將僅限於Linux。
3
eduffy提到的inotify ....
我看到這一段時間回來,基於inotify的。稱爲incron,它增加了cron類似於incron的功能。
相關問題
- 1. 如何查看文件系統目錄以查看何時添加文件?
- 2. 查看iOS的應用文件系統中的文件以進行測試?
- 3. Openshift:查看文件系統
- 4. 如何查看文件中進行的單個提交更改?
- 5. 系統如何監聽文件更改?
- 6. 如何使用Node.js有效地查看文件以進行更改?
- 7. 如何撤消在Rails/RSpec測試中進行的文件系統更改?
- 8. 如何觀看Excel文件變化,同時openpyxl進行更改
- 9. 如何更改Woocommerce系統文本
- 10. 如何更改android系統
- 11. 如何監視特定文件以查看Mercurial中的更改?
- 12. 如何更改文件權限以查看圖像
- 13. 如何更改hadoop文件系統中的文件權限
- 14. 如何查看文件,而不是使用Python進行更改的目錄?
- 15. 輪詢文件以進行更改?
- 16. 如何在Eclipse PDT中查看文件系統
- 17. iOS開發者是否可以查看文件系統?
- 18. 檢測文件更改 - 修補系統
- 19. 文件系統通知更改了?
- 20. 更改cramfs文件系統的權限
- 21. C++/Qt:跟蹤文件系統更改
- 22. 更改Python文件系統編碼
- 23. 更改系統文件的權限
- 24. 如何查看對CSS樣式進行更改的影響
- 25. 如何查看是否對錶單進行了更改
- 26. HTML5文件系統API進行
- 27. 遠程進行文件系統同步
- 28. 如何使用QFileSystemWatcher監視文件夾以進行更改
- 29. 我應該如何輪詢大量文件以進行更改?
- 30. 輪詢文件以進行更改是如何工作的?
我可能會誤解你打算在這裏做什麼。添加邏輯到計時器刻度?這是否意味着你打算得到一個目錄列出每個勾號並進行比較?沒有!不要這樣做! – 2009-11-25 21:36:17