ทำไมไฟล์ข้อความ 200 MB โอเวอร์โหลด RAM 4gB


3

ฉันเขียนโปรแกรมอย่างง่ายใน c ++ ซึ่งทำการคำนวณบางอย่างส่งออกตัวเลขไปยัง textfile และทำซ้ำ หลายล้านครั้ง ไฟล์ข้อความสุดท้ายอยู่ที่ประมาณ 215 เมกะไบต์ แต่เมื่อฉันเปิดมัน gedit ใช้เวลานานกว่า 5 นาทีในการเปิดทั้งหมดและฉันก็ข้ามแรม 4 Gb ของฉันไปสู่การแลกเปลี่ยนลินุกซ์ ทำไมสิ่งนี้ถึงเกิดขึ้นเมื่อขนาดไฟล์ดั้งเดิมเพียง 200 MB


3
geditเป็นสิ่งที่ใช้หน่วยความจำในปริมาณสูงไม่ใช่โปรแกรมของคุณใช่ไหม?
Dre

แก้ไข. โปรแกรมเมื่อดำเนินการใช้เวลาไม่ถึง 20 Mb แต่เพิ่มขึ้นอย่างช้าๆประมาณ. 1 Mb ทุกนาที
sandwhich

เรียกใช้ gedit จาก valgrind สิ่งนี้จะบอกคุณว่ามีหน่วยความจำรั่วในรุ่นของ gedit ของคุณหรือไม่ ในระบบของฉัน (Ubuntu 12.04.4) เป็นกรณีนี้ ดังนั้นฉันต้องออกจาก gedit ทั้งหมดเป็นครั้งคราวเพื่อเพิ่มหน่วยความจำทั้งหมด
Dohn Joe

คำตอบ:


4

การค้นหาใน Google geditดูเหมือนว่าจะจัดการกับไฟล์ขนาดใหญ่ได้ไม่ดีนัก

ฉันจะลองเปิดไฟล์ในแบบที่ชอบ less

vimโดยค่าเริ่มต้นจะไม่ทำงานเช่นเดียวกับที่ฉันคิดว่ามันทำกับไฟล์ขนาดใหญ่หากคุณต้องการใช้vimคุณควรใช้บางอย่างเช่นhttp://www.vim.org/scripts/script.php?script_id=1506


ฉันเพิ่งลองเปิดไฟล์ใน gvim และการใช้ ram เพิ่มขึ้นประมาณ 230 MB เท่านั้น มันตลกดีที่ฉันเปิดโปรแกรมที่เขียนด้วย ca เมื่อก่อนที่ประมาณ 100 mb แต่ gedit ไม่ตอบสนองอย่างรุนแรง ขอบคุณ
sandwhich

และเพื่อตอบคำถามส่วนอื่นของคุณฉันไม่รู้ว่าทำไม gedit ใช้หน่วยความจำมากขนาดนั้น - อาจเป็นเพราะการเขียนโปรแกรมไม่ดีหรือมีข้อบกพร่อง ฉันไม่เห็นเหตุผลว่าทำไมมันควรจะเป็น หากคุณต้องการหน่วยความจำอย่างน้อยวิธีดูไฟล์ขนาดใหญ่ฉันคิดว่าlessเป็นวิธีเดียวที่จะไปจากขุดของฉัน (คุณไม่สามารถแก้ไขได้ในกรณีที่แม้ว่า)
Dre

+1 น้อย! ฉันเคยต้องเปิดไฟล์ 37.1 GiB และใช้งานได้น้อยลง!
AndrejaKo

หากการแก้ไขข้อความในบรรทัดคำสั่งช่วยให้คุณสั่นพิจารณาGeany มันเป็นเครื่องมือแก้ไขเดียวที่ทำงานในการทดสอบของฉันกับไฟล์> 1 GiB เบามาก ๆ
Marc.2377
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.