I have a C ++ application that receives stock data and forwards it to another application through a socket (acting as a server).
In fact, the function WSASendreturns with error code 10055 after a few seconds, and I found that this error message
"Buffer space is unavailable. The socket operation could not be performed because the system does not have enough space for the buffer or because the queue is full."
The problem only occurs when the application starts after market hours, since we get data for the whole day (approximately 130 MB) in a few minutes (I assume that it is relatively large) I do this as a reliability test.
I tried to increase the send buffer of SO_SNDBUF using a function setsockopt, but the same problem still exists. How can I solve this problem? Is this related to the receiver buffer?
Shipping Details:
For each complete message, I call a send method that uses overlapping sockets
EDIT: Can anyone give general guidelines for handling high frequency data in C ++?
source
share