libpinyin / ibus-libpinyin

GNU General Public License v3.0
627 stars 90 forks source link

在长期使用之后,会出现随即卡死的问题 #396

Open xiaozhangup opened 1 year ago

xiaozhangup commented 1 year ago

刚装新系统时,ibus很流畅没有问题。 使用大约3-5天,输入很多东西之后,卡顿开始出现 没吃都是输入时突然不会继续接受新字符,然后怎么按键盘都没什么用。。。 等大约5-6分钟又恢复了了正常,但是再用一段时间还是会卡

epico commented 1 year ago

可以考虑清除用户数据,删除 ~/.cache/ibus/libpinyin/user.conf 文件,重新登陆即可。

xiaozhangup commented 1 year ago

可以考虑清除用户数据,删除 ~/.cache/ibus/libpinyin/user.conf 文件,重新登陆即可。

删除数据不应该是解决这个问题的办法 我记得几年前就有人反馈过这个问题,到了今天依然没有修复。

xiaoqieF commented 1 year ago

确实,经常会卡住,非常影响使用体验

ShinoharaHaruna commented 1 year ago

好像是读取数据库严重影响了效率 一个临时的解决方法是切换到别地输入法,但是 libpinyin 还是得等 IO 操作走完

xiaozhangup commented 1 year ago

好像是读取数据库严重影响了效率 一个临时的解决方法是切换到别地输入法,但是 libpinyin 还是得等 IO 操作走完

然后这个“临时的解决方法”,就临时了好几年

epico commented 1 year ago

如果是切换到其它输入法,再切换回来后,正常的话,可能是输入法崩溃了,可以考虑先升级到稳定版本或者更高的版本,再清除个人数据。

ShinoharaHaruna commented 1 year ago

如果是切换到其它输入法,再切换回来后,正常的话,可能是输入法崩溃了,可以考虑先升级到稳定版本或者更高的版本,再清除个人数据。

切回来也要等 libpinyin 处理完, 只是切到英文以后可以正常键入. 如果拼音 IO 操作没走完, 切回拼音也不行.

signdo commented 1 year ago

可能是在设置中勾选了 "将每个输入记录为新的词汇" 和 "候选词排列顺序: 词频"

xiaozhangup commented 1 year ago

可能是在设置中勾选了 "将每个输入记录为新的词汇" 和 "候选词排列顺序: 词频"

关闭并清除数据后问题依然存在

signdo commented 1 year ago

我的情况是,用 Fedora36 时,几乎每天都会出现楼主的情况(输入法版本号不记得了),当时前几次重装系统都会在 Intelligent Pinyin 输入法设置中勾选 "将每个输入记录为新的词汇" 和 "候选词排列顺序: 词频"。

前两个月又重装 Fedora36,就保持默认设置,只改了双拼和部分快捷键,惊奇地发现问题没再出现。 最近换了 Fedora37,输入法版本是 Intelligent Pinyin 1.13.1,这两个设置依旧保持默认,没有问题。 这个仓库最近一次 release 是在 9 月,估计当时用 Fedora36 时也是这个版本。楼主的输入法是最新的版本吗?

xiaozhangup commented 1 year ago

我的情况是,用 Fedora36 时,几乎每天都会出现楼主的情况(输入法版本号不记得了),当时前几次重装系统都会在 Intelligent Pinyin 输入法设置中勾选 "将每个输入记录为新的词汇" 和 "候选词排列顺序: 词频"。

前两个月又重装 Fedora36,就保持默认设置,只改了双拼和部分快捷键,惊奇地发现问题没再出现。 最近换了 Fedora37,输入法版本是 Intelligent Pinyin 1.13.1,这两个设置依旧保持默认,没有问题。 这个仓库最近一次 release 是在 9 月,估计当时用 Fedora36 时也是这个版本。楼主的输入法是最新的版本吗?

fedora仓库的最新

signdo commented 1 year ago

建议重装

ShinoharaHaruna commented 1 year ago

应该是记忆词频这个事读写数据库太频繁了?(可能

signdo commented 1 year ago

应该是记忆词频这个事读写数据库太频繁了?(可能

我之前在英文状态下按键盘也会卡。 可英文状态是直接输入按下的字符,没有候选词,也不需要记忆输入的字符。 卡的那一小段时间,除了个别特殊按键,键盘几乎完全无法使用。 点击状态栏图标唤出首选项 UI 不会立即显示,在结束卡顿后才显示。 (可以通过这种 特性 监测卡顿:在卡顿时点击输入法首选项,什么时候显示了 UI,则表明此时卡顿结束)

epico commented 1 year ago

ibus-libpinyin 应该是在五分钟后,没有输入的情况下,会写入用户数据。

Cyberprober commented 1 year ago

我也出现这种情况 系统: ubuntu 22.04 经常会有一段时间的无响应,这个时候我一般会切换输入源暂时使用英文输入源,也是等5,6分钟后会恢复正常。

numieo commented 1 year ago

ubuntu 20.04 勾选了"动态调整候选词顺序"、"将每个输入记录为新的词汇"和"显示建议(输入预测)"

使用半年后出现,有时在中文输入时会没有候选词框,打字没有反应,等几秒后会自己打印出按过键的字符,偶尔卡顿,快一个月

取消勾选"显示建议(输入预测)"后,到现在两天没问题

chopins commented 1 year ago

将缓存文件放到内存中,可以缓解卡死、延迟问题。这个避免在使用过程中频繁卡死而需要频繁重启ibus。 以下是简单例子: 将~/.cache/ibus/libpinyin/文件夹软链接到/tmp/中 可以在~/.bash_profile中创建这个软链接文件夹

lazebird commented 1 year ago

这个问题真的很影响体验呀,新debian默认用这个输入法,有没有解决计划呢,不然就要换其他输入法用了

xiaoduanayu commented 11 months ago

这个问题确实太影响体验了,我用的IDEA写代码,有的时候由于输入法卡死,导致IDEA也卡死,最后不得不杀死IDEA进程,重启IDEA会发现几分钟前写的代码就全没了,要重写。 本来想换搜狗输入法,奈何搜狗输入法UI太老旧,和Ubuntu很不协调,这个输入法可以说是和Ubuntu原生UI配合最好的输入法了,还请作者花点时间解决下卡顿问题,谢谢!

epico commented 11 months ago

有可能是用户数据损坏造成的...

epico commented 11 months ago

Fixed in https://github.com/libpinyin/ibus-libpinyin .

ibus-libpinyin 在退出时会进行存盘。 为了避免在关机或重启时,用户数据损坏,暂时关闭了这个功能。 ibus-libpinyin 在空闲时,每五分钟会保存一次数据。

epico commented 9 months ago

ibus-libpinyin 1.15.5 已经发布,关闭了在 Logout 的时候,保存数据的功能。

ibus-libpinyin 会在停止输入5分钟后,保存用户数据。

如果之前有问题的话,请先升级到新版本,再清除用户数据,看看是否还有问题。