我用我的IPC基礎的應用msgget()
功能。我如何清理充滿舊消息隊列的隊列?如何清理IPC消息隊列?
3
A
回答
5
1
一個解決辦法是增加消息隊列的MSGMNI系統範圍最大數量:政策依賴(在Linux上,這個限制可以被讀取,並通過的/ proc/sys目錄/內核/ msgmni時修改)。
0
這些持久性資源分配的問題(有一個類似與共享內存)是爲什麼系統V的API通常被認爲是過時。在這種情況下,您是否考慮過使用unix域套接字或FIFO而不是消息隊列?那些出現在文件系統中,並且可以在不再使用像rm這樣的工具時被「清理」。
1
您可以使用mq_setattr更改O_NONBLOCK的消息隊列屬性。 然後通過讀取所有消息,直到返回值表示隊列是空的空隊列。 現在回退舊的屬性。
該方法不是優化運行時間,但它避免了關閉和打開消息隊列的需要。
相關問題
- 1. 在消息接受()隊列IPC UNIX
- 2. 消息隊列IPC執行在Linux上
- 3. 如何清除/清除VxWorks中的消息隊列緩衝區?
- 4. 計劃清除隊列消息
- 5. 從Linux IPC消息隊列中讀取消息兩次的方法
- 6. 什麼是單機最快的Perl IPC /消息隊列?
- 7. IPC消息隊列。 msgrcv系統調用。系統V.如何走出循環
- 8. 消息如何從msmq中的毒隊列中清除
- 9. Websphere消息隊列
- 10. Boost消息隊列
- 11. unix消息隊列
- 12. 消息隊列ENOMEM
- 13. Sinatra消息隊列
- 14. 如何控制或管理JMS隊列?例如。改變隊列中的消息順序,刪除消息等
- 15. 後臺處理與消息隊列
- 16. 如何將消息從ESB的主題發送到消息代理的隊列
- 17. 如何持續監視消息隊列?
- 18. (消息傳遞)隊列如何擴展?
- 19. 如何啓動不消息隊列?
- 20. 如何保留消息隊列
- 21. 如何查看隊列中的消息
- 22. 如何創建消息隊列?
- 23. 消息代理隊列和消息類型
- 24. 只處理來自消息隊列的一些消息
- 25. 消息隊列中的多條消息
- 26. 如何使用chromeicle隊列處理非持久性IPC?
- 27. 如何統計窗口消息隊列中的消息?
- 28. 如何獲取jms隊列中待處理消息的數量
- 29. 如何積極處理Azure服務總線隊列消息
- 30. 在消息隊列中如何處理方向更改?