id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 8540,Named Condition Variable hanging.,ealfay@…,Ion Gaztañaga,"Hi, I am having problems with the shared memory code below. I can get this working on a Windows, MAC and OpenSUSE machine. However this same code does not work on my redhat v5.0 workstation machine. It appears to hang on the wait (condition variable). Any idea why this would be the case on this particular OS? I can't find anything online on the subject. Website of code: http://en.highscore.de/cpp/boost/interprocesscommunication.html#interprocesscommunication_managed_shared_memory #include #include #include #include #include int main() { boost::interprocess::managed_shared_memory managed_shm(boost::interprocess::open_or_create, ""shm"", 1024); int *i = managed_shm.find_or_construct(""Integer"")(0); boost::interprocess::named_mutex named_mtx(boost::interprocess::open_or_create, ""mtx""); boost::interprocess::named_condition named_cnd(boost::interprocess::open_or_create, ""cnd""); boost::interprocess::scoped_lock lock(named_mtx); while (*i < 10) { if (*i % 2 == 0) { ++(*i); named_cnd.notify_all(); named_cnd.wait(lock); } else { std::cout << *i << std::endl; ++(*i); named_cnd.notify_all(); named_cnd.wait(lock); } } named_cnd.notify_all(); boost::interprocess::shared_memory_object::remove(""shm""); boost::interprocess::named_mutex::remove(""mtx""); boost::interprocess::named_condition::remove(""cnd""); } ",Bugs,new,To Be Determined,interprocess,Boost 1.51.0,Problem,,,