球拍未关闭 TCP 端口
Racket not closing TCP port
我用 Racket 编写了一个简单的 HTTP 回显服务器。当我从 DrRacket 中 运行 服务器然后单击停止按钮时,我的程序终止,但正在使用的端口需要很长时间才能关闭。如果我在终止程序后在我的终端中 运行 lsof -i :<port>
,我没有看到任何绑定到该端口的东西,但 DrRacket 不同意并拒绝让我重新启动我的程序,告诉我已经绑定了一些东西到那个港口。
这是 Racket 中的错误,还是我遗漏了什么?
如果您直接使用 tcp-listen
(意味着您自己处理所有低级套接字内容,并手动处理 HTTP),则需要使用 reuse?
参数集调用它至 #t
.
如果您使用的是 web-server
模块,它已经将 reuse?
设置为 #t
,因此它应该已经可以工作了。
我用 Racket 编写了一个简单的 HTTP 回显服务器。当我从 DrRacket 中 运行 服务器然后单击停止按钮时,我的程序终止,但正在使用的端口需要很长时间才能关闭。如果我在终止程序后在我的终端中 运行 lsof -i :<port>
,我没有看到任何绑定到该端口的东西,但 DrRacket 不同意并拒绝让我重新启动我的程序,告诉我已经绑定了一些东西到那个港口。
这是 Racket 中的错误,还是我遗漏了什么?
如果您直接使用 tcp-listen
(意味着您自己处理所有低级套接字内容,并手动处理 HTTP),则需要使用 reuse?
参数集调用它至 #t
.
如果您使用的是 web-server
模块,它已经将 reuse?
设置为 #t
,因此它应该已经可以工作了。