Site icon PlusMagi's Blog By Pitt Phunsanit

Heap Memory คืออะไร

Heap Memory คือ พื้นที่หน่วยความจำ ( RAM ) ส่วนหนึ่งที่ระบบปฏิบัติการเตรียมไว้ให้โปรแกรมใช้สำหรับ จองหน่วยความจำแบบไดนามิก ( Dynamic Memory Allocation ) ในระหว่างที่โปรแกรมกำลังทำงาน ( Runtime ) เพื่อให้เห็นภาพรวมง่ายขึ้น มักจะนำไปเปรียบเทียบกับ Stack Memory ครับ


ลักษณะเด่นของ Heap Memory


การจัดการ Heap ในภาษาโปรแกรมต่าง ๆ

วิธีการที่แต่ละภาษาใช้จัดการขยะ (ข้อมูลที่ไม่ได้ใช้แล้ว) บน Heap จะแตกต่างกันไปครับ


สรุปความต่าง Heap vs Stack แบบรวบรัด

คุณสมบัติStack MemoryHeap Memory
การจองพื้นที่อัตโนมัติ ( ตาม Scope ของฟังก์ชัน )ไดนามิก ( ตามคำสั่งในโปรแกรม )
ความเร็วเร็วมากช้ากว่า ( ต้องอ้างอิงผ่าน Pointer )
ขนาดพื้นที่จำกัดและเล็กกว่าใหญ่มาก ( ตาม RAM ที่เหลือในระบบ )
สิ่งที่มักจะเก็บValue Types ( int, float, bool ), PointersReference Types ( Objects, Arrays, Strings )

อ่านเพิ่มเติม

Exit mobile version