上报前请检查
- [√ ] 我遇到的问题没有其他人在 issue 里提到过:有其它issue提到,但他们的信息不算完整,未抓堆栈和解析符号
- [√ ] 我的小狼毫版本于 rime/weasel 下载:官方下载渠道
- [√ ] 我在使用小狼毫的最新发布版本,或最新发布版本后的 CI 构建:使用的 0.17.4 发布版本
操作系统信息
- OS 详细版本: [ 10.0.19045 ]
- 小狼毫版本: [ 0.17.4]
描述遇到的问题
应用程序启动的子进程卡死在weasel.dll中(未崩溃,但长时间卡死无响应),附加符号后卡死的堆栈如下图所示:
复现步骤
重现问题的步骤,如:
- 打开 A 软件(该软件为公司内部软件,非公开软件)
- A软件打开图片查看器,会唤起子进程显示图片
- 未进行操作,子进程发生卡死无响应
- 遇到了 子进程卡死在weasel.dll 问题,某些场景下必现,平时正常不会复现
预期行为
预期小狼毫确认下该问题是否可以进行修复
用户文件
暂无
截图
其他补充说明
- 附加PDB符号后看到是如上图所示的ipc写入逻辑中,即函数 PipeChannelBase::_WritePipe,该函数会在目标进程主线程中写入命名管道并于 WeaselServer.exe进行通信,等待对方消费,I/O 可能由于各种原因卡住继而导致用户的目标进程发生卡死问题
- 可以尝试将IPC的 I/O 操作放到子线程中执行,卡用户UI会导致用户体验受到影响
上报前请检查
操作系统信息
描述遇到的问题
应用程序启动的子进程卡死在weasel.dll中(未崩溃,但长时间卡死无响应),附加符号后卡死的堆栈如下图所示:
复现步骤
重现问题的步骤,如:
预期行为
预期小狼毫确认下该问题是否可以进行修复
用户文件
暂无
截图
其他补充说明