0
所以我有升壓1.47以下代碼:的boost ::進程間:: message_queue權限被拒絕
try
{
m_messageQueue = boost::shared_ptr<boost::interprocess::message_queue>(
new boost::interprocess::message_queue (
boost::interprocess::open_or_create
,name.c_str() //name
,numElements //max message number
,sizeof(Message) //max message size
));
}
catch(boost::interprocess::interprocess_exception &e)
{
cerr << e.what();
}
其中name = 「test_queue」,包含numElements = 100,和sizeof(消息)= 256。
輸出是: 權限被拒絕
如果我運行root用戶,它會通過。我無法弄清楚它試圖寫入哪裏會出現許可錯誤。查看boost代碼,不應該只是在/ tmp/boost_interprocess中,任何用戶都有權創建和寫入該代碼?此外,我注意到https://svn.boost.org/trac/boost/ticket/4250,但現在應該修復。
任何幫助,將不勝感激。