ref: a351bcdccdf5a4273bc8dc3360a48fbb8b8aa9ea
dir: /progs/pollb.c.ms/
.P1
.ps -1
.ti -1i
.B
.BX pollb.c
.ps +1
.CW
.ps -2
.vs .15i
#include <u.h>
#include <libc.h>
void
main(int argc, char* argv[])
{
Dir* d;
ulong mtime, nmtime;
if (argc != 2){
fprint(2, "usage: %s file\en", argv[0]);
exits("usage");
}
d = dirstat(argv[1]);
if (d == nil)
sysfatal("dirstat: %r");
mtime = d->mtime;
free(d);
do {
sleep(5 * 1000);
d = dirstat(argv[1]);
if (d == nil)
break;
nmtime = d->mtime;
free(d);
} while(nmtime == mtime);
print("%s changed\en", argv[1]);
exits(nil);
}
.ps +2
.P2