Scala Internet关闭时,不会调用TCP IO Akka套接字连接关闭

Scala Internet关闭时,不会调用TCP IO Akka套接字连接关闭,scala,tcp,connection,akka,Scala,Tcp,Connection,Akka,我已经使用akka的TCP模块实现了一个套接字-客户端交互。我试图让应用程序检测套接字何时关闭,并释放分配给该客户端套接字的资源 Akka有一个案例:ConnectionClosed案例来处理这种情况。但我意识到,当互联网连接中断时,它不会被调用 我找不到任何东西可以检测到套接字的客户端部分与internet断开连接 是否有我遗漏的任何细节?网络连接断开不一定会关闭任何套接字,操作系统可以在网络连接恢复时让它们保持打开状态。我相信这确实是你的操作系统的问题,而不是Akka的问题。TCP连接最终将

我已经使用akka的TCP模块实现了一个套接字-客户端交互。我试图让应用程序检测套接字何时关闭,并释放分配给该客户端套接字的资源

Akka有一个案例:ConnectionClosed案例来处理这种情况。但我意识到,当互联网连接中断时,它不会被调用

我找不到任何东西可以检测到套接字的客户端部分与internet断开连接


是否有我遗漏的任何细节?

网络连接断开不一定会关闭任何套接字,操作系统可以在网络连接恢复时让它们保持打开状态。我相信这确实是你的操作系统的问题,而不是Akka的问题。TCP连接最终将超时,但这可能需要几十分钟。看。

现在我知道这是主要问题。我没想到要两个小时才能断开连接。我的解决方案是更改操作系统参数“echo 60>/proc/sys/net/ipv4/tcp_keepalive_time”、“echo 5>/proc/sys/net/ipv4/tcp_keepalive_intvl”、“echo 3>/proc/sys/net/ipv4/tcp_keepalive_probe”