擅长:python、mysql、java
<p>既然你已经在使用<a href="http://pypi.python.org/pypi/lockfile" rel="nofollow">lockfile by Ben Finney</a></p>
<p>示例:</p>
<pre><code> from lockfile.pidlockfile import PIDLockFile
lock = PIDLockFile('somefile')
lock.acquire(timeout=3600)
#do stuff
lock.release()
</code></pre>
<p>您可能希望与正在运行的守护进程通信,您应该让守护进程监听某个套接字,然后从派生的进程向该套接字发送数据。(例如udp套接字)</p>
<p>所以在守护进程中:</p>
^{pr2}$
<p>在客户机上:</p>
<pre><code>import socket
hostname = 'localhost'
port = 12368
message = "hello"
sock = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
sock.sendto( message, (hostname, port) )
</code></pre>
<p>如果在同一台计算机上运行所有这些,则可以使用“localhost”作为主机名。在</p>
<p>另一方面,使用<a href="http://docs.python.org/library/multiprocessing.html#pipes-and-queues" rel="nofollow">multiprocess pipes</a>代替套接字可能是正确的方法,但是我还没有使用它们的经验。
此设置的另一个好处是能够在不同的计算机上运行服务器和客户端。在</p>