[問題] fclose(); 及資源問題.

看板C_and_CPP (C/C++)作者 (報告站長 PTTers 咬我 !)時間15年前 (2010/10/22 01:49), 編輯推噓2(208)
留言10則, 6人參與, 最新討論串1/1
大家好,小弟想在Linux上寫一個程式(一個會跑很長時間的程式). 程式當中需要讀取一個很大很大的文字檔. 又因為讀取到一定資料時要先進行別的計算. 計算完後又讀取. 讀取->計算->讀取->計算->讀取..... 想問一下這樣到底應不應該在讀取一小段資料後 fclose(); ? 因為文字檔很大,怕不fclose();會佔系統資源. 但也怕fclose();後 fopen 時也需要時間. 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Linux -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.233.75

10/22 01:57, , 1F
把你alloc的記憶體清乾淨 可能比較有意義...
10/22 01:57, 1F

10/22 02:12, , 3F
FileMapping
10/22 02:12, 3F

10/22 02:13, , 4F
可以完全不用擔心這種問題 ...
10/22 02:13, 4F

10/22 10:37, , 5F
我會建議先寫出來再思考最佳化問題
10/22 10:37, 5F

10/22 16:22, , 6F
讀寫才會耗資源 只是開著擺在那不會耗什麼資源
10/22 16:22, 6F

10/22 23:13, , 7F
fopen是回傳檔案所在的位址(ptr) 不會有什麼影響
10/22 23:13, 7F

10/22 23:15, , 8F
如果沒有連續讀取反而 open->close->open 行數不會往下跑
10/22 23:15, 8F

10/22 23:15, , 9F
除非你有用seek去修改位址
10/22 23:15, 9F

10/22 23:22, , 10F
如果要做temp file也可以
10/22 23:22, 10F
文章代碼(AID): #1Cm7qRA_ (C_and_CPP)
文章代碼(AID): #1Cm7qRA_ (C_and_CPP)