5 #ifndef ATHENAINTERPROCESS_SHAREDQUEUE_H
6 #define ATHENAINTERPROCESS_SHAREDQUEUE_H
12 #include <boost/interprocess/ipc/message_queue.hpp>
18 static const int SHAREDQUEUE_MAX_MSG = 1000;
19 static const std::size_t MAX_MSG_SIZE = 256;
27 int max_msg = SHAREDQUEUE_MAX_MSG,
28 std::size_t max_size = MAX_MSG_SIZE,
29 bool do_unlink =
true );
35 std::string
name()
const;
37 virtual bool try_send(
const std::string& );
38 virtual bool send(
const std::string& );
66 boost::interprocess::message_queue*
m_queue;
81 catch(boost::interprocess::interprocess_exception&) {
90 return do_send_basic<T>(
data,
false);
95 return do_send_basic<T>(
data,
true);
101 std::size_t recvd_size = 0;
102 bool receive_ok =
true;
112 catch(boost::interprocess::interprocess_exception&) {
133 #endif // !ATHENAINTERPROCESS_SHAREDQUEUE_H