0
我有一些代碼:緩衝區的插座來排隊問題
隊列的聲明:
typedef deque<char*, allocator<char*> > CHARDEQUE;
typedef queue<char*,CHARDEQUE> CHARQUEUE;
CHARQUEUE p;
size_t size_q;
char recv_data[1024];
我使用的是UDP套接字到遠處的機器接收數據:
這是循環:
while (1)
{
bytes_read = recvfrom(sock,recv_data,1024,0, (struct sockaddr *)&client_addr, &addr_len);
p.push(recv_data);
size_q=p.size();
printf("%d\n",size_q);
}
但問題是,我不能將數據複製到我的隊列這就是我想要的,我可以只是點對它來說......任何一個人都可以幫忙嗎?
瞭解更多信息,我的程序接收的原始數據,這就是爲什麼我使用的字符數組.. 任何想法如何解決這一問題?
在這種情況下,它可能是值得做的檢查,以避免推空載體到隊列中。 – 2010-12-03 14:30:18