Am 31.03.15 um 21:17 schrieb Ian Kelly:
On Tue, Mar 31, 2015 at 12:58 PM, Christian Gollwitzer <aurio...@gmx.de> wrote:
Am 31.03.15 um 16:50 schrieb Ervin Hegedüs:

there is an app, written in Python, which stores few bytes of
datas in a single file. The application uses threads. Every
thread can modify the file, but only one at a time. I'm using a
lock file to prevent the multiple access.

Here is the lock method:

[...]
This works as well for me - about 3-4 weeks. After some weeks, I
got this error:

OSError: [Errno 24] Too many open files: '/var/spool/myapp/queue.lock'


Can you try if fcntl.flock() does what you want? Should be better than
inventing your own locking mechanism.

flock locks are per-process; they won't help for synchronizing access
between competing threads in the same process.


Ok. But if it is really all in one process, then a classical mutex would do, wouldn't it? I'm not experienced with threading in Python, but it seems from the documentation, that threading.Lock() works like a mutex.

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

Reply via email to