[C++-sig] solaris-intel sem deadlock problem... :-/
korg at csse.unimelb.edu.au
Thu Nov 10 06:14:11 CET 2005
Any ideas welcome.... im out of ideas... :-/
Semaphore code hangs when call from python module but not from c/c++.
Im working on a project that is a massive c++ piece of work that
offers a single object with useful methods.
Its a database and it starts 3 other processes and uses shared memory
and semaphores to communicate.
The c++ interface is the native one (and its kinda big at ~30M exe's).
It has a C interface which creates a dll of c++ code and wraps
each method call in a c function.
There is a python wrapper that wraps the c interface.
It works fine on linux-x86, linux-ppc64 and we're just porting to
solaris-intel but we've hit a problem.
The startup code for the c++ object does some forking and sem work and
it works fine for the c++ interface and the c interface but the python
module just hangs in the semaphore semget loop.
The constructor for the c++ object is called with the same args via
python or c (so its not that).
We're using boost for config passing, but the boost config values are
The c interface works (so its not the dll).
It could be some solaris issue, but the c and c++ interfaces work
fine... its just the python interface.
Has anyone got _any_ ideas? Or am I in for a big chunk of c++
semaphore debugging? :-/ (refer to kill me comment ;)
/ Cameron Blackwood korg at csse.unimelb.edu.au \
[ Research Programmer, Aditi Project +61 3 8344-1315 ]
\ University of Melbourne /
More information about the Cplusplus-sig