-
Notifications
You must be signed in to change notification settings - Fork 521
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
StreamSend method hangs when called in an infinite loop #4180
Comments
All your sends point to the same memory, 'numStr', for which you continue to change. Send just queues to the MsQuic thread and immediately returns. You cannot reuse that memory until you get a send completion. |
Yes, memory, I apologize for such trivial mistakes, I recently got acquainted with C. It helped with the order of numbers, but the main problem remained. 1-2 packets of 10k-20k messages are sent to the server. After that, the connection is interrupted. |
That error, |
Disabled everything that could block in callbacks (except error output), the error changes between 0x6e and 0x3e. |
That error is |
It would be nice, but there is a StreamSend call in an infinite loop... Therefore, in theory, the connection should not be idle. |
If you continue to call send, but the connection says idle, that likely means flow control kicked in, blocking further sends. This can happen if you're not draining the data in the receive callback. I recommend you grab some logs and take a look. |
Describe the bug
A crash occurs if StreamSend called in an infinite loop.
Affected OS
Additional OS information
Ubuntu 22.04.3 LTS
MsQuic version
main
Steps taken to reproduce bug
Expected behavior
Actual outcome
Additional details
No response
The text was updated successfully, but these errors were encountered: