Кажется, есть два очевидных подхода:
Используя пример в ссылке выше и некоторые догадки, вы получите что-то вроде этого:
static PyObject *mySharedMutex_lock(PyObject *self, PyObject *args)
{
const char *objectName;
int sts;
if (!PyArg_ParseTuple(args, "s", &objectName))
{
return NULL;
}
boost::interprocess::named_mutex mutex(open_or_create, objectName);
mutex.lock();
return Py_None;
}
Очевидно, что вам понадобится другая контрольная панель из инструкций по ссылке выше, и, вероятно, для обеспечения способа разблокировки мьютекса. Не выглядит обременительным, чтобы заставить это работать.