mirror of
https://github.com/espressif/ESP8266_RTOS_SDK.git
synced 2025-08-05 22:11:04 +08:00
fix: high thoughput(payload>10KB) cause send failed
1. socket would block at send(), return -1 when set MSG_DONTWAIT 2. changed to ~MSG_DONTWAIT, send() will block until all payload send over 3. recv() should keep MSG_DONTWAIT attribute, otherwise will lead to low thoughtput
This commit is contained in:
@ -155,7 +155,7 @@ static int esp_write(Network *n, unsigned char *buffer, unsigned int len, unsign
|
||||
|
||||
if (FD_ISSET(n->my_socket, &fdset)) {
|
||||
do {
|
||||
rc = send(n->my_socket, buffer + sentLen, len - sentLen, MSG_DONTWAIT);
|
||||
rc = send(n->my_socket, buffer + sentLen, len - sentLen, 0);
|
||||
|
||||
if (rc > 0) {
|
||||
sentLen += rc;
|
||||
|
Reference in New Issue
Block a user