你如何持续监控clojure中文件的内容?

时间:2015-04-02 14:07:46

标签: csv clojure

我有一个incanter数据集,我希望每次其他进程更改源csv文件时重新加载。换句话说,每当我看时,mydata_ incanter数据集应该是最新的。如何在惯用语中实现这一点?

(use 'incanter.io)
(def mydata_ (read-csv "./changingfile.csv"))

在某些时候,另一个进程更改了changingfile.csv,如何确保mydata_自动更新?这与仅在clojure中的现有数据结构中添加监视功能略有不同。

感谢。

1 个答案:

答案 0 :(得分:3)

在这里观看文件系统的好库:https://github.com/derekchiang/Clojure-Watch 可用于观看csv并可将mydata_设置为原子,或者任何使用mydata都可以从clojure-watch回调中启动。