POSIX 消息队列相关问题
一、查看和刪除消息隊列
要想看到創建的posix消息隊列,需要在root用戶下執行以下操作:
# mkdir /dev/mqueue
# mount -t mqueue none /dev/mqueue
刪除隊列使用 rm 命令即可。
二、查看和調整消息隊列限制
參考 《Linux進程通信之POSIX消息隊列》
1、查看消息隊列大小的限制
# ulimit -a |grep message
POSIX message queues ? ? (bytes, -q) 819200
限制大小為800KB,該大小是整個消息隊列的大小,不僅僅是最大消息數*消息的最大大小;還包括消息隊列的額外開銷。測試代碼見參考文章。
2、修改消息隊列大小的限制
切換到root用戶
# ulimit -q 1024000
但會在shell啟動進程結束后失效,可以將設置寫入開機啟動的腳本中執行,例如/etc/bash.bashrc,/etc/rc.local中(由于需要root權限,因此其他用戶登陸時無法自動設置成功)。
如果要創建的消息隊列總大小超過該限制,會報錯:Too many open files
3、其他限制
POSIX消息隊列在實現上還有另外兩個限制:
MQ_OPEN_MAX:一個進程能同時打開的消息隊列的最大數目,POSIX要求至少為8
MQ_PRIO_MAX:消息的最大優先級,POSIX要求至少為32
from:?http://blog.sina.com.cn/s/blog_590be5290102w6un.html
轉載于:https://www.cnblogs.com/hehehaha/p/6332267.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的POSIX 消息队列相关问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 团队冲刺站立会议03
- 下一篇: 成都Uber优步司机奖励政策(4月24日