日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

Qt开发 之 Windows资源管理器模仿 并 小超越

發布時間:2023/12/10 windows 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt开发 之 Windows资源管理器模仿 并 小超越 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1、簡述
  • 2、優化點
    • 2.1、內存處理
      • 2.1.1、Windows的資源管理器
        • 2.1.1.1、大圖標模式
        • 2.1.1.2、超大圖標模式
        • 2.1.1.3、其他模式
      • 2.1.2、用Qt做的類似資源管理器的軟件
    • 2.2、滑動處理
      • 2.2.1、Windows的資源管理器
      • 2.2.2、用Qt做的類似資源管理器的軟件
    • 2.3、超大數據處理
    • 2.4、縮略圖生成優化處理
      • 2.4.1、視頻文件
      • 2.4.2、音樂文件與圖片文件

1、簡述

最近在做一個類似Windows的資源管理器的軟件,先測一下資源管理器的文件加載處理過程,先學習一下再進行小小的超越。

我們做的改造主要對以下幾點進行優化:

  • 內存優化處理
  • 滑動優化處理
  • 大數據優化處理
  • 縮略圖生成優化處理

測一下才發現資源管理器這里的內存處理做的有點垃圾,它的大目錄加載的處理是真的垃圾。說它垃圾是因為如果機器配置不夠會直接把操作系統卡死,內存占用會一直增加,這里我自己的軟件做了優化。下面用數據說話吧……

測試用的系統是Win10的操作系統來測試的,測試的操作系統信息如下

2、優化點

2.1、內存處理

2.1.1、Windows的資源管理器

2.1.1.1、大圖標模式

4萬圖片,全部圖片加載過程占用500M,加載完初始化大小200M,圖片全部加載完差不多占用1.5個G。

2.1.1.2、超大圖標模式

4萬圖片,全部圖片加載過程占用500M,加載完初始化大小100多M,圖片加載一半左右差不多已經是5G多,普通電腦根本不夠它玩的。這臺測試機器總共才8G內存,之前為了測試這個把操作系統搞卡死機好幾次,這次滑了一半左右就停了,已經占用5G內存了,再來其他軟件就沒活路了。

2.1.1.3、其他模式

其他模式還沒測,有興趣的可以自己一個個測試下

2.1.2、用Qt做的類似資源管理器的軟件

依舊是4萬圖片的目錄,全部圖片加載過程占用100M內存,加載完初始化大小160多M,動態加載在160-170M之間。

優化:滑動時,只有在顯示區域內的圖加載縮略圖顯示出來,已經加載的縮略圖進行釋放并用默認圖標代替。這樣即使快速滑動或者滑輪滾動,內存基本沒有變化。

2.2、滑動處理

2.2.1、Windows的資源管理器

實時加載并實時顯示。這樣說好也可以,因為可以動態顯示出部分圖片,說不好就是會卡滑動條,數據量一旦起來,Windows資源管理器做加載滑動時卡卡的。

2.2.2、用Qt做的類似資源管理器的軟件

這里我做了優化,因為快速滑動的時候沒必要實時加載出縮略圖。所以在滑動基本穩定后我們再進行縮略圖加載。

算法優化:在X毫秒內,連續執行 N次 Y函數時,只執行最后一次的函數調用。

(這里的gif動圖猶豫生成的原因比真實效果慢些,對付看)

2.3、超大數據處理

我這里指的超大數據是10w以上的數據。如果用Windows本身的資源管理器,超大圖標模式,4W文件的情況全部加載完,8G內存都讓他耗完了,就別提超大數據了,直接GG。我們這里的應對措施暫時應用翻頁的處理方式,如果不考慮單頁可承受內存的影響,最合理的應該是1w數據一頁,占用內存如果用我們的處理方式,差不多穩定在100M以下

2.4、縮略圖生成優化處理

2.4.1、視頻文件

視頻文件,Windows采用的是取視頻的第10s的幀,不足10s的取最后的幀。這樣的話,如果是電視連續劇的話,會導致該電視劇生成的所有縮略圖都一樣。如果想區分的話,可以用我的方法,取視頻中間幀。推薦用ff,大視頻文件和小視頻文件取第幾幀的時間大致一樣。

2.4.2、音樂文件與圖片文件

音樂和圖片縮略圖生成和Windows一致。音樂文件的縮略圖藏在文件的頭信息里面,只有部分mp3格式的文件里面包含此信息。這個和windows原理一致,先讀取再生成

總結

以上是生活随笔為你收集整理的Qt开发 之 Windows资源管理器模仿 并 小超越的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。