前情提要:某个小圈子内自己做自己玩的游戏,制作人明说了不禁、甚至鼓励自动化脚本。所以我做了一个,因为这样那样的原因最后是放在 WSL1 里跑了,白天就放家里挂着。
连续两天,回家以后发现整个操作系统处于不可用状态。任何 TCP 链接都无法建立,大部分依赖进程间通信的软件也无法运作,并且几乎都没有提供恰当的报错。但是,相应地 UDP 相关都非常正常,DNS 也正常,游戏都玩了两把才发现的。
最后唯一提供了有意义的信息的报错点是 Synergy,明确表示 socket 耗尽(值得注意的是,只有第一天是 socket 耗尽,第二天单纯地报 inter-process communication 失败)。但 netstat -ano 并没有多少连接在。将 WSL 停止后情况没有改善。甚至任务管理器的 “详细信息” 选项卡都显示不出来,最后只能重启。
将这个脚本转移到另一台原生 Linux 上去后到现在一个月了无论哪边都没发生过这种情况。
现在提问:WSL1 长期运行网络相关任务确实会导致这种情况吗? 如果是的话,是 WSL1 的实现不完整的缘故导致的吗?是我的内存没有 ECC 的缘故吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.