WSL1 使用过程中会遇到一些问题,这里做简单的记录。

vscode watcherService

表现:使用 vscode remote-wsl 时,会有一个进程占用过多 CPU。 node bootstrap-fork --type=watcherService

关联 issue:vscode-remote-release/issues/864

暂时的解决方法:配置 "remote.WSL.fileWatcher.polling": true

PS:WSL2 采用不同的 filewatcher 策略,不受此影响。

vscode glibc6

表现:使用 vscode remote-wsl 时,会有一个进程占用过多 CPU。 node bootstrap-fork --type=extensionHost --uriTransformerPath=xxxx/uriTransformer.js

简单排查:使用 strace 查看进程调用,发现唤醒频繁。

关联 issue:- ubuntu/15291 - WSL/4898

结论:glic6 2.31 /posix/nanosleep.c 使用 CLOCK_REALTIME 。但是 WSL1 没有内置 CLOCK_REALTIME 支持,要等 WSL1 方面的支持。

暂时的解决方法:暂不升级 glibc6 到 2.31,如果为 Ubuntu 20.04,建议使用 WSL2。

sudo apt-mark hold libc6


Related Posts


Published

WSL

Category

windows

Tags

Contact