C 寫單個較大檔案與寫多個較小檔案的效能比較

2021-10-14 17:35:45 字數 1912 閱讀 2979

我們對檔案寫操作:

1.寫多個檔案,每個檔案較小

2.直接寫乙個較大的檔案

比較這兩種方式的效能。

一般來說,讀寫檔案可以適當緩衝區大一點,儘量減少多次讀寫檔案操作。

寫乙個比較大的檔案 比 寫多個小檔案 花費的時間要少很多。

同理:tcp通訊中,可以適當減少傳送和接收次數,而每次傳送和接收的緩衝區可以適當大一些,來優化通訊效能。

我們用實際程式測試【寫檔案】:

乙個寫入200個1kb的檔案【累計檔案大小為200kb】

直接寫入乙個2mb的檔案【檔案大小為2048kb,大約是200kb的十倍】

using system;

using system.collections.generic;

using system.diagnostics;

using system.io;

using system.linq;

using system.text;

using system.threading.tasks;

namespace writemultiplefiledemo

string content = sb.tostring();

console.writeline("開始測試【寫200個1kb檔案】與【寫乙個2mb的檔案】所花費的時間比較......");

task taskmultiple = task.run(() =>

); task tasksingle = task.run(() =>

); task.waitall(taskmultiple, tasksingle);

console.writeline("寫乙個比較大的檔案 比 寫多個小檔案 花費的時間要少很多。\n同理:tcp通訊中,可以適當減少傳送和接收次數,而每次傳送和接收的緩衝區可以適當大一些,來優化通訊效能");

console.readline();

}/// /// 寫檔案用時

///

///

///

///

static void writefileusetime(actionactionwritefile, string methodname, string content)

】,寫檔案結束,用時【】ms");

}/// /// 寫100個1kb的檔案

///

///

static void writemultiplefile(string content)

for (int i = 1; i <= 200; i++)

.txt";

using (filestream filestream = new filestream(path, filemode.create, fileaccess.write)) }}

}/// /// 寫1024行1kb的單個檔案,也就是1mb

C 檔案操作讀與寫

檔案操作 程式執行時的產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放,通過檔案可以將資料持久化,c 中對檔案操作需要包括標頭檔案 檔案型別分為兩種 1.文字檔案 檔案以文字的ascii碼形式儲存在計算機 2.二進位制檔案 檔案以文字的二進位制形式儲存在計算機中,使用者一般不能直接讀懂他們 操作...

20201214 3 檔案讀與寫詳解1

5.檔案操作 對檔案操作流程 1.開啟檔案,得到檔案控制代碼並賦值給乙個變數 2.通過控制代碼對檔案進行操作 3.關閉檔案 5 1 開啟檔案 data open yesterday encoding utf 8 read print data python 預設編碼 是 utf 8 如果開啟不指定,...

Python筆記(15)檔案讀與寫詳解

user bin env python coding utf 8 author berlin 注意 1 檔案只有三種模式 r代表只能讀 w代表只能寫 a代表可以在文末追加文字 2 在w模式下,開啟open檔案時,又接著write新的文字。那麼結果是 清空原檔案的內容,寫入新的內容。這種情況會造成刪庫...