Author

Topic: file_lock in python/Qt (Read 1612 times)

legendary
Activity: 1232
Merit: 1076
February 12, 2011, 08:36:09 PM
#2
hrrnnngg... back to the top
legendary
Activity: 1232
Merit: 1076
February 12, 2011, 05:03:57 PM
#1
Hey,

So I want to detect when bitcoind is running but that RPC server hasn't yet started up.

The way bitcoind checks whether it's already running is by using boost::file_lock
http://www.boost.org/doc/libs/1_35_0/boost/interprocess/sync/file_lock.hpp

Any ideas how to use this in python? I could create my own binding for python but I'd rather not have a compilable dependency for such a minor thing.

The problem with checking a systems processes is that it's unreliable to assume the program is always called bitcoin (i.e different server implementations).

I tried a different file-lock library:
Code:
$ bitcoind
$ sudo apt-get install python-lockfile
$ python
import lockfile
lock = lockfile.FileLock('.bitcoin')
with lock:
    print lock.path

'.bitcoin'
$ cd .bitcoin/
$ python
import lockfile
lock = lockfile.FileLock('.lock')
with lock:
    print lock.path

'.lock'

Any ideas how to do this? Must be cross-platform. File locking is an OS function, so maybe I'm not using the correct file?
Jump to: