How do I create a fileWatcher with an onFileChange event using spawn?
Jacob Carlborg via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Aug 27 23:27:20 PDT 2017
On 2017-08-25 23:25, Enjoys Math wrote:
>
>
> Something like this:
>
>
> module file_watcher;
>
> import std.concurrency;
> import std.file;
> import std.signals;
> import std.datetime;
>
>
> void fileWatcher(Tid tid, string filename, int loopSleep) {
> auto modified0 = timeLastModified(filename);
>
> while (true) {
> modified = timeLastModified(filename);
>
> if (modified > modified0) {
> modified0 = modified;
> //if (onFileChange !is null)
> // onFileChange(receiver);
> }
>
> sleep(dur!"msecs"(loopSleep));
> }
> }
>
>
> But I'm not sure how to send the onFiledChange event.
A delegate perhaps?
Or you can look at any of the existing event driven libraries that do this:
http://code.dlang.org/packages/vibe-core
http://code.dlang.org/packages/libasync
--
/Jacob Carlborg
More information about the Digitalmars-d-learn
mailing list