diff options
author | robot-piglet <[email protected]> | 2025-08-28 14:27:58 +0300 |
---|---|---|
committer | robot-piglet <[email protected]> | 2025-08-28 14:57:06 +0300 |
commit | 81d828c32c8d5477cb2f0ce5da06a1a8d9392ca3 (patch) | |
tree | 3081d566f0d5158d76e9093261344f6406fd09f7 /contrib/tools/swig/Lib/python/director_py_mutex.swg | |
parent | 77ea11423f959e51795cc3ef36a48d808b4ffb98 (diff) |
Intermediate changes
commit_hash:d5b1af16dbe9030537a04c27eb410c88c2f496cd
Diffstat (limited to 'contrib/tools/swig/Lib/python/director_py_mutex.swg')
-rw-r--r-- | contrib/tools/swig/Lib/python/director_py_mutex.swg | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/contrib/tools/swig/Lib/python/director_py_mutex.swg b/contrib/tools/swig/Lib/python/director_py_mutex.swg new file mode 100644 index 00000000000..5bb0f83f26b --- /dev/null +++ b/contrib/tools/swig/Lib/python/director_py_mutex.swg @@ -0,0 +1,24 @@ +/* ----------------------------------------------------------------------------- + * director_py_mutex.swg + * + * contains python mutex for threads + * ----------------------------------------------------------------------------- */ + +#if defined(SWIG_PYTHON_THREADS) && !defined(SWIG_THREADS) +#define SWIG_THREADS 1 +#endif +#if defined(SWIG_THREADS) && !defined(Py_LIMITED_API) +#include "pythread.h" +#define SWIG_HAVE_MUTEX +namespace Swig { + class Mutex + { + PyThread_type_lock mutex_; + public: + Mutex() : mutex_(PyThread_allocate_lock()) {} + ~Mutex() { PyThread_free_lock(mutex_); } + void lock() { PyThread_acquire_lock(mutex_, WAIT_LOCK); } + void unlock() { PyThread_release_lock(mutex_); } + }; +} +#endif |