【历史讨论】GoldenDict-ng 基于Qt5.15.2/Qt6.X版本

It works perfectly fine. Thank you so much for your help!

问下开启这个选项以后,对性能有影响吗?或者有什么其他影响 :flushed:

如果不打开,mdx词典的js,css加载的时候,会用到缓存。略快些。

1 个赞

关注下这个问题。有可能修复吗?qrc://bres:// 加载文件耗时太长了。

有看,暂时没办法。
qrc是系统的。
bres是自定义的。

1 个赞

使用 Calibre 的时候,没有遇到类似问题,Qt 的版本是 6.4.2,应该不是版本问题。

我对比了下两边代码,GD这边处理资源请求,需要通过QNetworkAccessManager,Calibre 这边没有这玩意,是不是这个的问题?(我没有调试代码,可能离大谱。。

Calibre 对应代码:

UrlSchemeHandler#L125

SendReply#L43

在这个pr里有尝试QBuffer 效果跟现在的差不多,基本没提升。

1 个赞

。。。真奇怪,看不出区别来了。

从calibre的时间上看,确实多了1个数量级。不知道是哪个地方影响的。也可能是其他的一些配置造成的。

为什么我的电脑上运行不了QT6.X版本,打开正常,一安装词典,程序自动退出,试了很多次都不行。其他两个版本没有这个问题。请赐教。

是github上的程序吗,网盘的不是最新版

多出来的时间,貌似是耗费在这里

stalled 是浏览器这边的行为,应该不涉及资源解析,即读取mdx这边。

意思是浏览器相关的什么配置,造成的?

不过你看这个回复,即使 stalled 有问题,后面那个蓝色条,也就是资源下载时间也更有问题。

装了开发环境,启用词典调试,禁用浏览器缓存:

  1. 注释掉内置的所有JS和CSS,1.2m 的图片,content download 时间从 180ms 下降到 5-15ms。
  2. 从 Qt 6.5.3 切换到 Qt 6.4.3,stalled 从 100-150ms 下降到 60-90ms。
  3. 菜单-文件-重新扫描,stalled 下降到 5-20ms。

1 个赞

禁用缓存的情况下,stall time减少了一半。

不禁用,连续访问的情况。

1 个赞

从实际使用没禁用缓存来看,连续查词,有时是memory cache就快了,有时就抽风不会memory cache了,也没观察到什么规律。

使用这个pr之后 opt: reduce the network stall time by xiaoyifang · Pull Request #1207 · xiaoyifang/goldendict-ng · GitHub
貌似内置的链接都会缓存了。(这是个意外)

1 个赞