How to find out if another process is using a file

Tom Wright tew24 at
Thu Jan 18 17:24:13 CET 2007

I'm writing a program which reads a series of data files as they are dumped
into a directory by another process.  At the moment, it gets sporadic bugs
when it tries to read files which are only partially written.

I'm looking for a function which will tell me if a file is opened in
write-mode by another process - if it is, my program will ignore it for now
and come back to it later.  This needs to work on linux and windows.  Mac
OS would be a bonus too.  An os-independent solution would be good, but I
could write os-specific options and have it pick the appropriate one.

Is there any way of doing this? I've drawn a blank with google so far.

A nasty hack would be to use the file modification time, and wait until
that's a few seconds in the past, but is there a nice solution?

I'm at CAMbridge, not SPAMbridge

More information about the Python-list mailing list