On 03Sep2018 07:45, Malcolm Greene <pyt...@bdurham.com> wrote:
>Use case: Want to prevent 2+ instances of a script from running ...
>ideally in a cross platform manner. I've been researching this topic and
>am surprised how complicated this capability appears to be and how the
>diverse the solution set is. I've seen solutions ranging from using
>directories, named temporary files,  named sockets/pipes, etc. Is there
>any consensus on best practice here?

I like os.mkdir of a known directory name. This tends to be atomic and
forbidden when the name already exists, on all UNIX platforms, over remote
filesystems. And, I expect, likewise on Windows.

All the other modes like opening files O_EXCL etc tend to be platform specific
and not reliable over network filesystems.

And pid based approaches don't work cross machine, if that is an issue.

Cheers,
Cameron Simpson <c...@cskk.id.au>

-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to