On Mar 13, 8:45 pm, News123 <news1...@free.fr> wrote: > Hi, > > I'd like to make sure, that a certain python program will only be run > once per host. (linux/windows) > > so if the program is started a second time it should just terminate and > let the other one run. > > This does not have to be the fastest solution, but it should be reliable. > > I have a few ideas, but wonder, which one is the most common > > My ideas so far: > > pid file and file locking > -------------------------- > create a file like program.pid with the pid of the running program an > use file locking to avoid race connditions. > > However I currently don't know how to do file locking under windows > and I don't know how to do file lockng with python and linux. > I'll start googling. > > sqlite and locking > -------------------- > quite some time ago I used a mysql table and locking as an inter-host mutex. > > Perhaps sqlite would be good enough for an inter process mutex for > processes on the same host, but I don't know it well enough. > > interprocess mutex > -------------------- > well I even don't know whether something like this exists on linux / windows > > Thanks in advanced for any tips > > N
I'll just open a port with a TCP socket, it is cross-platform and free from race conditions. -- http://mail.python.org/mailman/listinfo/python-list