我創建其中將數據放入其定義如下消息隊列線程:C++處理隊列溢出
std::deque<struct MessageDetails> MsgQueue;
struct MessageDetails{
char msg[256];
uint64_t Signature;
int32_t Id;
int32_t Mask;
bool Valid;
};
理想情況下,其它模塊應該從這個隊列並處理它pop
的數據。 但是,對於我的代碼中的錯誤處理,如果其他模塊沒有處理任何數據(或沒有處理得太快),則消息隊列大小不斷增加,並且可能在某個時間點導致溢出。
我想知道它何時會溢出(分配的大小是多少?)以及如何處理?我能捕捉到什麼錯誤嗎?
如果答案解決您的問題,你必須正確標註它。 –