Given the context of #30837.
Where basically we have the problem of destroying a handle while it's being actively used during read/write causing "unexpected" errors.
-
I believe we might have similar problems in net, http, http2 and also quic. Where we can destroy the handle while it's in active use. Is this something we need to address?
-
Can we find a generic solution in streams as to avoid this "race"? e.g. in Writable we could defer calling _destroy until the active write has completed or failed. Readable would be a bit more tricky without changing or adding to the API.
I'm unsure how big of a problem this actually is.
Given the context of #30837.
Where basically we have the problem of destroying a handle while it's being actively used during read/write causing "unexpected" errors.
I believe we might have similar problems in net, http, http2 and also quic. Where we can destroy the handle while it's in active use. Is this something we need to address?
Can we find a generic solution in streams as to avoid this "race"? e.g. in
Writablewe could defer calling_destroyuntil the active write has completed or failed.Readablewould be a bit more tricky without changing or adding to the API.I'm unsure how big of a problem this actually is.