-
Notifications
You must be signed in to change notification settings - Fork 12
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
Seems still does not solve the problem on the Windows platform #31
Comments
It seems that 437ef17 fix the issue, however, the subsequent commit re-introduces the issue. |
True, as I mentioned in the comment on #27 (comment), you need to manually shut down the stream yourself by calling |
Shall we wrapper the The Pseudo-code: struct TcpStream{
inner: Option<IpstackTcpStream>,
sender: Sender
}
impl Drop for TcpStream{
fn drop(& mut self){
if let Some(inner) = self.inner.take(){
self.sender.send(inner);
}
}
}
// Shutdown factory
while let Some(ipstack_stream) = receive.recv(){
tokio::spawn(async move {
ipstack_stream.shutdown().await;
})
} |
The operating system is responsible for managing the TCP/IP stack, and neither Tokio nor Rust has control over it. |
|
As seen in the picture, I used the latest one in the github, and the first problem in #27 remains unchanged.
2024-03-28.11.44.01.mov
The text was updated successfully, but these errors were encountered: