Nautilus

出自龙芯梦兰知识库

跳转到: 导航, 搜索

Nautilus 是 GNOME 桌面环境的官方文件管理器。

目录

特性

Nautilus 支持浏览本地文件系统,也可通过 GVFS 访问 FTP、SMB 等等的网络文件系统。

优化内容

加速 Nautilus 打开文件夹的速度。

优化原理

分析结果显示,Nautilus 打开文件夹需要创建一个 NautilusNavigationWinodw 对象和一个 NautilusNavigationPane 用于显示目录的内容,创建 NautilusNavigationWinodw 和 NautilusNavigationPane 类型的实例需要花费一些资源和时间,降低响应,影响用户体验。

通过缓存一定数目的 NautilusNavigationWinodw 和 NautilusNavigationPane 实例进行复用可以明显降低延迟。

具体实现

  1. 程序初始化时创建一个单向链表,用于保存缓存着的实例,并实例化 8 个实例,隐藏窗口。
  2. 在打开目录的处理方法中检查缓存链表中是否存在可用的实例,存在则使用;否则创建新的实例并使用。
  3. 在关闭目录的处理方法中检查缓存链表中节点的数目,小于等于 8 时则存入缓存链表;否则直接释放对象。

源代码

  1. 下载源代码: apt-get source nautilus
  2. 补丁位置: debian/patches/Opt-open-directory-speed-in-desktop.patch
个人工具
名字空间
变换
动作
导航
工具箱