Message78308
I think that you don't use Py_BEGIN_ALLOW_THREADS /
Py_END_ALLOW_THREADS correctly: the GIL can be released when the
hashlib lock is acquired (to run hash functions in parallel threads).
So the macros should be:
#define ENTER_HASHLIB \
PyThread_acquire_lock(self->lock, 1); \
Py_BEGIN_ALLOW_THREADS
#define LEAVE_HASHLIB \
Py_END_ALLOW_THREADS \
PyThread_release_lock(self->lock);
If I'm right, issue #4738 (zlib) is also affected. |
|
Date |
User |
Action |
Args |
2008-12-26 21:42:11 | vstinner | set | recipients:
+ vstinner, ebfe |
2008-12-26 21:42:10 | vstinner | set | messageid: <1230327730.92.0.273208459906.issue4751@psf.upfronthosting.co.za> |
2008-12-26 21:42:10 | vstinner | link | issue4751 messages |
2008-12-26 21:42:10 | vstinner | create | |
|