[plt-scheme] Determining the status of open files
Hi I am trying to write an application that starts replicating files
as they are being created by monitoring activity in a directory. I
wrote the following code to test the possibility of reading data from
a file that is open by another process.
(define (display-unless-eof line)
(unless (eof-object? line)
(display line)
(newline)))
(define (keep-reading file)
(display-unless-eof (read-line file))
(keep-reading file))
(define temp-thread (thread (lambda () (keep-reading (open-input-file
"~/dat")))))
(thread-suspend temp-thread)
The code above seems to do part of the job. What I need now is
something to determine when the other process stop writing, so that I
can kill the thread.
In openbsd there is a command fstat http://tinyurl.com/mxfv5 which I
could wrap. But I was wondering if there is a way to this in a cross-
platform manner, and in a more elegant way.
Any ideas are welcome.
-- Jaime
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20060706/566020c2/attachment.html>