在我的C软件中,我创建了10个线程(多线程)并在消息队列中写入消息。我还创建了另外一个线程来监视队列并从队列的另一端排出数据。
它运行正常,但邮件大小被默认为卡(10)。
我从论坛中了解到,通过运行" echo number> / proc / sys / fs / mqueue / msg_max"来增加mqueue大小,我把#" number"在Linux(Ubuntu)中为100。
然而,在此更改之后,当我再次执行我的软件时,我无法创建(pthread_create)超过4个线程。其他7个线程创建报告错误。除了队列太小之外,一切都还不错。
请问如何恢复msg_max的默认值以便我可以再次运行该软件?
还有其他方法可以增加mqueue的大小吗?
非常感谢。
干杯,
卫
答案 0 :(得分:0)
我们尝试了10> / proc / sys / fs / mqueue / msg_max,一切都很好。 – Janice Man