[發明專利]一種對比打包文件的方法,裝置及其系統有效
| 申請號: | 201410339457.5 | 申請日: | 2014-07-16 |
| 公開(公告)號: | CN104199637B | 公開(公告)日: | 2017-02-08 |
| 發明(設計)人: | 劉暢 | 申請(專利權)人: | 珠海金山網絡游戲科技有限公司;成都西山居互動娛樂科技有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司44205 | 代理人: | 陳國榮 |
| 地址: | 519000 廣東省珠*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 對比 打包 文件 方法 裝置 及其 系統 | ||
1.一種對比打包文件的方法,其特征在于:包括兩條獨立的流水線,每條流水線內包括:
5個獨立的線程:文件名比較線程,文件校驗值比較線程,文件讀取線程,文件解壓線程,文件內容比較線程,
5個獨立的任務隊列:文件名比較隊列,文件校驗值比較隊列,文件讀取隊列,文件解壓隊列,文件內容比較隊列,
1個差異結果集合,
所述的每個線程獨立完成自己的工作,即每次從自己的任務隊列中取出一個任務來完成,之后放入下一個任務隊列中。
2.根據權利要求1所述的一種對比打包文件的方法,其特征在于:用于對比的打包文件中,存儲了每一個包內的文件名所對應的包內文件地址和校驗值。
3.根據權利要求2所述的一種對比打包文件的方法,其特征在于:校驗值可選用CRC。
4.根據權利要求1所述的一種對比打包文件的方法,其特征在于:所述的差異結果集合中存儲了文件名,文件校驗值,文件內容上有差異的文件。
5.根據權利要求1所述的一種對比打包文件的方法,其特征在于:所述的兩條流水線在程序啟動時同時運行,其每條流水線對文件的操作過程是:
1)查詢每一個包內文件名對應的包內地址;
2)根據文件在包內的地址由低到高排序;
3)將排序的文件名存入文件名對比隊列中;
4)運行:文件名比較線程,文件校驗值比較線程,文件讀取線程,文件解壓線程和文件內容比較線程;
5)從差異結果集合中取出所有文件名,并輸出。
6.根據權利要求5所述的一種對比打包文件的方法,其特征在于:“文件名比較線程”工作過程如下:
1)????取出本流水線“文件名比較隊列”中的一個文件;
2)????在另一條流水線的“文件名比較隊列”中查找此文件名;
3)????若能找到,則將此文件放入本流水線的“文件校驗值對比隊列”,并將其從本流水線的“文件名比較隊列”中刪除,若不能找到則將其存入“差異結果集合”中;
4)????返回步驟1),以便取下一個文件。
7.根據權利要求5所述的一種對比打包文件的方法,其特征在于:“文件校驗值對比線程”工作過程如下:
1)????取出本流水線“文件校驗值對比隊列”中的一個文件;
2)????在另一條流水線的“文件校驗值對比隊列”中查找此文件名;
3)????若能找到,跳轉到步驟4),若沒有找到,則不做任何處理,跳轉到步驟5);
4)????對比兩個文件的校驗值值,若此時兩個文件的校驗值不同則將其存入“差異結果集合”中,則若此時兩個文件的校驗值值相同,則將此文件放入本流水線的“文件讀取隊列”,并將其從本流水線的“文件校驗值對比隊列”中刪除;
5)????返回步驟1),以便取下一個文件。
8.根據權利要求5所述的一種對比打包文件的方法,其特征在于:“文件讀取線程”工作過程如下:
1)????取出本流水線“文件讀取隊列”中的一個文件;
2)????將文件內容讀取到內存中;
3)????將此文件放入本流水線的“文件解壓隊列”,并將其從本流水線的“文件讀取隊列”中刪除;
4)????返回步驟1,以便取下一個文件。
9.根據權利要求5所述的一種對比打包文件的方法,其特征在于:“文件解壓線程”工作過程如下:
1)????取出本流水線“文件解壓隊列”中的一個文件;
2)????將文件內容在內存中解壓;
3)????將此文件放入本流水線的“文件內容比較隊列”,并將其從本流水線的“文件解壓隊列”中刪除;
4)????返回步驟1,以便取下一個文件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于珠海金山網絡游戲科技有限公司;成都西山居互動娛樂科技有限公司,未經珠海金山網絡游戲科技有限公司;成都西山居互動娛樂科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410339457.5/1.html,轉載請聲明來源鉆瓜專利網。





