So, is there a Pythonic way to have only one instance of program running?
The only reasonable solution I've come up with is trying to run it as a server on some port, then second program trying to bind to same port - fails. But it's not really a great idea, maybe there's something more lightweight than this?
(Take into consideration that program is expected to fail sometimes, i.e. segfault - so things like "lock file" won't work)
Update: the solutions offered are much more complex and less reliant than just having a port occupied with a non-existant server, so I'd have to go with that one.