-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[QUIC] Stream refactorings #59346
Labels
area-System.Net.Quic
enhancement
Product code improvement that does NOT require public API changes/additions
Milestone
Comments
dotnet-issue-labeler
bot
added
area-System.Net.Quic
untriaged
New issue has not been triaged by the area owner
labels
Sep 20, 2021
Tagging subscribers to this area: @dotnet/ncl Issue DetailsBased on our group code-review:
|
karelz
added
enhancement
Product code improvement that does NOT require public API changes/additions
and removed
untriaged
New issue has not been triaged by the area owner
labels
Sep 21, 2021
Closed by #71969 |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
area-System.Net.Quic
enhancement
Product code improvement that does NOT require public API changes/additions
Based on our group code-review:
Handle...
for private helpers that are not msquic callbacks, e.g.:runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Line 383 in 4d41173
Handle...
helpers. Blocked by having 3 differentWrite
methods.shouldComplete
(all vars) naming is not idealruntime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Lines 394 to 403 in 4d41173
ShutdownCompleted
? Beware of shutdown event handler releasing memory and having memory leaks.runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Lines 628 to 646 in 4d41173
Shutdown
which closes the writing side of the stream:runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Line 668 in 4d41173
_state.ShutdownDone
runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Line 808 in 4d41173
0xffffffff
runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Line 828 in 4d41173
NativeCallbackHandler
withHandleEvent
inMsQuicStream
. Why is this a seperate function? We should be consistent with other msquic objects like connection and listener. - both connection and listener have only one method.HandleEventRecv
andHandleEventPeerRecvAborted
to both caontain fullReceive
word as do the msquic event names.HandleEventRecv
and how it works togetherReadAsync
. The comments are there, just spread out across the code so it's hard to follow the logic.HandleEventSendComplete
: the cancelled flag will be set in 2 known cases: connection is getting aborted/closed or we issued Send with FIN flag quickly followed by another Send (the second will be cancelled). Since there might be race with connection close event we might consider ignore this SEND_COMPLETE in case of Cancelled==1.runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs
Line 1213 in 4d41173
CleanupReadStateAndCheckPending
could use a nicer name, but no one has any good suggestions.ReadState
.The text was updated successfully, but these errors were encountered: