IT A-Z

เข้าสู่ระบบ

สารบาญตามตัวอักษร

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

garbage collection

ที่มา SearchStorage

  :   ผู้ชม 12939

garbage collection เป็นการฟื้นฟูระบบของพื้นที่จัดเก็บรวมของคอมพิวเตอร์ที่ใช้โดยโปรแกรมเมื่อโปรแกรมนั้นไม่ต้องการพื้นที่จัดเก็บ สิ่งนี้ปล่อยให้พื้นที่จัดเก็บว่างสำหรับการใช้โดยอีกโปรแกรม (หรือกระบวนการภายในโปรแกรม) รวมทั้งทำให้มั่นใจว่าโปรแกรมด้วยการใช้จำนวนรวมพื้นที่จัดเก็บไม่ถึงสัดส่วน (ซึ่งกรณีนี้อาจจะไม่สามารถเป็นฟังก์ชัน)

garbage collection เป็นส่วนจัดการหน่วยความจำอัตโนมัติในหลายภาษาโปรแกรมสมัยใหม่ เช่น Java และภาษาใน .NET framework บ่อยครั้ง ภาษาที่ใช้ garbage collection ได้รับแปลหรือเรียกใช้ภายใน virtual machine เช่น JVM

ภาษาโปรแกรมเก่ากว่า เช่น C และ C++ การจัดสรรและการปล่อยว่างหน่วยความจำได้รับการทำโดยโปรแกรม หน่วยความจำสำหับข้อมูลที่ไม่สามารถจัดเก็บภายในประเภทข้อมูล primitive รวมถึงอ๊อบเจค บัฟเฟอร์ และข้อความ ได้รับการเปลี่ยนกลับบน heap เมื่อโปรแกรมไม่ต้องการข้อมูล ผู้เขียนโปรแกรมปล่อยก้อนข้อมูลด้วยการเรียก API เพราะกระบวนการนี้ควบคุมเอง ความผิดพลาดส่วนบุคคลสามารถแนะนำจุดบกพร่องมในคำสั่ง หน่วยความจำรั่วเกิดขึ้นเมื่อผู้เขียนโปรแกรมลืมปล่อยให้หน่วยความจำว่างหลังจากโปรแกรมไม่ต้องการแล้ว อีกช่วงเวลา ผู้เขียนโปรแกรมอาจจะพยายามเข้าถึงก้อนข้อมูลที่ได้รับการปล่อยแล้ว นำไปสู่แกว่งไปแกว่งมาของพอยเตอร์ที่สามารถเป็นสาเหตุจุดบกพร่องรุนแรงหรือเกิดการล่ม

โปรแกรมกับ garbage collector (GC) อัตโนมัติ พยายามขจัดจุดบกพร่องเหล่านี้โดยการสืบค้นอย่างอัตโนมัติ เมื่อไม่ต้องการชิ้นของข้อมูลนั้นแล้ว GC มีสองจุดมุ่งหมาย หน่วยความจำที่ไม่ได้ใช้ต้องปล่อยว่าง และไม่มีการปล่อยหน่วยความจำถ้าโปรแกรมยังใช้งานอยู่ ถึงแม้ว่าบางภาษายอมให้หน่วยความจำว่างได้เอง แต่ส่วนมากไม่ได้

สารสนเทศเพิ่มเติม

wikipedia : กล่าวถึง garbage collector รวมถึงการอ้างอิงประเภทต่างกัน ยุทธศาสตร์การใช้ และการทำงาน
Bill Jones : สร้างเว็บไซต์ garbage collector เพื่อประกอบหนังสือของเขาในหัวข้อนี้

ศัพท์เกี่ยวข้อง

C++, Java, virtual machine, C, storage, .NET, memory leak

update: 13 มีนาคม 2551

IT A-Z ปรับปรุงล่าสุด
abacus
zero-day exploit
MPP (massively parallel processing)
message queueing
medium
semaphore
master/slave
MAC address (Media Access Control address)
mash-up
vlog
LANDesk Client Manager
laptop computer
linkrot
Itanium
Job Entry Subsystem (JES)
IP telephony (Internet Protocol telephony)
Kerberos
iterative
interoperability
interface definition language (IDL)

Loading
Microsoft Access
Access
ไชยวัฒน์ ตระการรัตน์สันติ สั่งซื้อผ่าน PayPal ในราคา 280 บาท
อุ้มผาง เบื้องหลังธรรมชาติ
Umphang
รู้จักอุ้มผางในอีกแง่มุม โดย ประชา แม่จัน
สั่งซื้อผ่าน PayPal ในราคา 90 บาท
สงวนลิขสิทธิ์ (C) widebase