Memory Leak (รั่วของหน่วยความจำ) เกิดขึ้นเมื่อทรัพยากรหน่วยความจำไม่ได้ถูกคืนกลับไปยังระบบหลังจากที่แอปพลิเคชันใช้งานเสร็จสิ้น ส่งผลให้การใช้งานหน่วยความจำ (RAM) เพิ่มขึ้นอย่างต่อเนื่องใน Task Manager และทำให้ประสิทธิภาพของคอมพิวเตอร์ลดลง ปัญหานี้มักเกิดขึ้นเมื่อระบบมี RAM ไม่เพียงพอต่อความต้องการของโปรแกรมที่ทำงานอยู่
ปัญหานี้คล้ายคลึงกับการใช้ CPU สูง (High CPU usage) ซึ่งสามารถป้องกันและแก้ไขได้หลายวิธี เนื่องจากสาเหตุก็หลากหลายเช่นกัน การแก้ไข Memory Leak ไม่ได้ยากเท่าปัญหา CPU สูง และสามารถแก้ไขได้โดยการรีสตาร์ทคอมพิวเตอร์ ปิดแอปพลิเคชันบางตัว หรือปิดบริการ (Services) ที่ไม่จำเป็น
รีสตาร์ทคอมพิวเตอร์ (Restart Your PC)
วิธีนี้ไม่ใช่การแก้ไขอย่างถาวร แต่ช่วยแก้ปัญหาชั่วคราวขณะที่คุณหาวิธีแก้ไขอย่างถาวร การรีสตาร์ทจะล้างข้อมูลทั้งหมดที่ทำให้ RAM ถูกใช้งานมากเกินไป และในส่วนใหญ่แล้วการรีสตาร์ทสามารถแก้ปัญหาได้ชั่วคราว
ขั้นตอนการรีสตาร์ท:
- คลิกที่โลโก้ Windows ที่มุมล่างซ้ายของหน้าจอ หรือกดปุ่ม Windows บนคีย์บอร์ด
- คลิกที่ปุ่ม Power (พลังงาน)
- เลือก Restart (รีสตาร์ท)
ขั้นตอนนี้ควรทำให้คอมพิวเตอร์ใช้งานได้ตามปกติ หากมันล่มหรือช้ามากก่อนหน้านี้
ปิดบริการที่ใช้หน่วยความจำสูง (Disable Services)
คุณสามารถปิดบริการที่ใช้ RAM มากที่สุดผ่าน Task Manager บริการ (Services) ทำงานอัตโนมัติในพื้นหลังหรือรอคำขอข้อมูลจากแอปพลิเคชันอื่น ซึ่งเป็นเรื่องปกติที่จะใช้หน่วยความจำ แต่ไม่ควรสูงจนกระทบประสิทธิภาพระบบ Task Manager จะช่วยบอกว่าบริการหรือแอปใดใช้หน่วยความจำมากที่สุด
ขั้นตอนการปิดบริการ:
- กด Ctrl + Shift + Esc เพื่อเปิด Task Manager
- หาบริการที่ใช้หน่วยความจำมากที่สุด และจดชื่อบริการนั้นไว้
- กด Windows + R
- พิมพ์ services.msc แล้วกด Enter
- ค้นหาบริการที่พบใน Task Manager
- ดับเบิลคลิกที่บริการนั้น
- คลิกปุ่ม Stop (หยุด)
- เปลี่ยน Startup type เป็น Disabled (ปิดใช้งาน)
การทำเช่นนี้จะปิดบริการนั้นอย่างถาวร ป้องกันไม่ให้เริ่มทำงานใหม่และใช้ RAM จนทำให้คอมพิวเตอร์ช้าลง
ปิดบริการที่มัก gây Memory Leak บ่อย (Disable Common Leaking Services)
มีบริการบางตัวที่รู้จักกันดีว่าเป็นสาเหตุหลักของ Memory Leak บริการเหล่านี้พบได้บ่อยในคอมพิวเตอร์ที่มีปัญหานี้
- เปิด Services โดยพิมพ์ services ในช่องค้นหา
- หาบริการ IP Helper คลิกขวาเลือก Stop และ Disable
หมายเหตุ: การปิด IP Helper ไม่เป็นอันตรายต่อระบบ เพราะบริการนี้เกี่ยวข้องกับ IPv6 เท่านั้น หากคุณไม่ได้ใช้ IPv6 การปิดจึงไม่มีผลกระทบ
3. บริการถัดไปคือ Superfetch (ใน Windows 10 ใหม่เรียกว่า SysMain)
บริการนี้เป็นหนึ่งในสาเหตุหลักของ Memory Leak และอาจทำให้เกิด Blue Screen หรือคอมพิวเตอร์ล่มได้ ควรปิดบริการนี้เพื่อป้องกันปัญหา
ปิดบริการผ่าน Registry Editor (Disable Services from Registry Editor)
บางบริการไม่สามารถปิดได้ผ่าน Services.msc ต้องแก้ไขผ่าน Registry Editor ซึ่งเป็นวิธีที่เสี่ยง หากทำผิดอาจทำให้ระบบเสียหาย ควรสร้าง Restore Point ก่อนทำทุกครั้ง
- เปิด Registry Editor โดยพิมพ์ในช่องค้นหา
- ขยาย HKEY_LOCAL_MACHINE
- ขยาย SYSTEM → CurrentControlSet (หรือ ControlSet001)
- คลิกที่ Services
- หา NDU
- คลิกที่ค่า Start
- เปลี่ยนค่าเป็น 4 (ค่า 4 หมายถึง Disabled)
การเปลี่ยนค่าเป็น 4 จะปิดบริการ NDU ซึ่งเป็นบริการที่มักทำให้ระบบล่ม
Google Chrome ใช้ RAM สูงเกินไป
Google Chrome เป็นเบราว์เซอร์ที่ดีที่สุดแต่ก็มีข้อเสียคือใช้ RAM มาก คุณสามารถลดการใช้ RAM ได้โดย: ปิดส่วนขยาย (Extensions) ที่ไม่ใช้, ปิด Hardware Acceleration, หรือใช้เบราว์เซอร์อื่น เช่น Microsoft Edge, Firefox, Opera GX
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการลด RAM ของ Chrome สามารถค้นหาได้จากแหล่งข้อมูลอื่น
วิธีป้องกัน Memory Leak (How can I Prevent This?)
ปัญหานี้ไม่ได้มาจากสาเหตุเดียว อาจเกิดจากฮาร์ดแวร์หรือซอฟต์แวร์หลายอย่าง ดังนี้คือวิธีป้องกัน:
อัปเกรด RAM (Upgrade your RAM)
RAM น้อยเป็นสาเหตุหลักของ Memory Leak ปัจจุบัน 8GB ถือว่าเพียงพอสำหรับงานทั่วไป ส่วน 16GB เป็นจุดที่เหมาะสมสำหรับเล่นเกม หาก RAM น้อยกว่านี้ ควรพิจารณาอัปเกรด
สแกนไวรัสเป็นประจำ (Anti-virus Scans)
สแกนไวรัสทุก 1-4 วัน เพื่อป้องกันมัลแวร์ที่อาจกินหน่วยความจำหลายคนติดตั้งแอนติไวรัสแต่ไม่ได้สแกนจริง ซึ่งเป็นสิ่งสำคัญมาก
อัปเดต Driver ให้ทันสมัย (Keep your Drivers Updated)
Driver ที่ล้าสมัยไม่ได้แค่ทำให้ Memory Leak แต่ยังทำให้ FPS ต่ำ คอมพิวเตอร์ช้า จอดำ หรือปัญหาอื่นๆ การ์ดจอจะทำงานไม่เต็มประสิทธิภาพ
ปิดโปรแกรมเริ่มต้นกับ Windows (Disable Startup programs)
โปรแกรมที่เริ่มต้นทำงานพร้อม Windows อาจกิน RAM โดยที่คุณไม่รู้ ตรวจสอบและปิดโปรแกรมที่ไม่จำเป็น
ขั้นตอน:
- กด Ctrl + Shift + Esc เปิด Task Manager
- คลิกแท็บ Startup
- คลิกขวาที่โปรแกรมที่ไม่ต้องการ → เลือก Disable