回答
不,您可以調用的send()的數量沒有上限。 (例如:'perror(「error sending。system said」);')調用以查看哪個錯誤正在生成。
請注意,在這種情況下-1是一個通用的返回碼,可能意味着任何內容從「我的套接字關閉」到「您給我的參數不是有效的文件描述符」;因此,如果沒有進一步的信息,很難說出正在發生的事情。
編輯:假設上述答案* NIX;這是一個可憐的假設。
由於您使用ACE,請查看ACE :: send()文檔(doxygen是here)。此外,應該有一個ACE_OS :: perror(「error sending。system said」)調用(doxygen是here),它應該與我上面描述的類似。
HTH
好的。我來看看那個.thanks – aks 2010-09-07 06:36:49
沒有具體的限制,但顯然你不能繼續以節點速度抽出它,如果接收方沒有儘快消耗速度。它們之間有各種緩衝區,無論軟件/硬件維護什麼,都會限制它們接受的數量。您需要等到接收方在繼續發送之前消耗一些數據。你可以得到一個異步通知,告訴socket何時變得可寫入......如果你使用的是BSD API,請檢查select或poll的細節。
據我所知沒有這樣的限制。我已經將這項工作發送了幾天,發送數據沒有任何問題。
顯然還有一些其他問題。請提及更多細節。
此外,它可能是你發送太多的數據並填充緩衝區。檢查也。
不...因爲我的接收器進入阻塞狀態,沒有任何數據可讀 – aks 2010-09-07 06:07:15
- 1. 可通過端口套接字發送的最大數據量
- 2. 發送到APNS套接字服務器的最大設備數
- 3. 通過java中的套接字發送大量數據
- 4. 在UDP套接字上發送大量數據
- 5. 通過套接字發送大量數據
- 6. 通過TCP套接字發送大量數據
- 7. 一次可以使用套接字發送和接收的最大數據大小?(TCP套接字)
- 8. 用套接字發送文件大小
- 9. 套接字 - 不發送/接收數據
- 10. 發送一個數字與套接字
- 11. 將數據發送到套接字列表中的套接字
- 12. C#發送/接收字節大小的問題(套接字)
- 13. 套接字發送錯誤
- 14. 套接字發送問題
- 15. 綁定發送套接字
- 16. 套接字 - 發送圖像
- 17. Windows套接字發送stringstream
- 18. 查詢C中的最大套接字發送緩衝區大小?
- 19. 通過套接字發送NULL數據
- 20. 通過UDP套接字發送數據
- 21. Android通過套接字發送數據
- 22. 在AF_PACKET套接字上發送數據
- 23. 套接字BufferedWriter.flush()不發送數據
- 24. LF將數據發送到套接字
- 25. 通過套接字發送整數python
- 26. 套接字發送recv函數
- 27. C#套接字重構(數據發送)
- 28. 套接字不能發送數據
- 29. 套接字不發送數據
- 30. tcp套接字數據發送xml包
您需要提供有關您正在使用的系統和開發環境的其他信息。比如「在Windows Server 2008上使用Visual C++下的WinSocks ...」。 – tidwall 2010-09-07 06:07:22
請正確標記您的問題。這與C或C++作爲編程語言沒有多大關係。 – 2010-09-07 11:45:14