Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

mscorsvw.exe คืออะไรใน Windows 11/10? แก้ไขปัญหา High CPU

บทความนี้อธิบายว่า mscorsvw.exe (.NET Runtime Optimization Service) คือกระบวนการที่คุณเห็นใน Task Manager ของ Windows 11/10 ว่าเป็นไวรัสหรือไม่ เรายังอธิบายว่ามันทำหน้าที่อะไร ต้องการหรือไม่ และสามารถปิดใช้งานหรือลบได้ไหม ถ้าแสดงการใช้ CPU สูง

mscorsvw.exe ใน Windows คืออะไร?

mscorsvw.exe คืออะไรใน Windows 11/10? แก้ไขปัญหา High CPU

David Notario เคยสังเกตการณ์บนบล็อก MSDN ของ Microsoft ดังนี้:

mscorsvw.exe กำลังคอมไพล์ .NET assemblies ในพื้นหลัง (background) เมื่อเสร็จแล้ว มันจะหายไป โดยทั่วไป หลังจากติดตั้ง .NET Redist มันจะเสร็จ assemblies priority สูงใน 5-10 นาที แล้วจะรอจนคอมพิวเตอร์ idle เพื่อประมวลผล assemblies priority ต่ำ เมื่อทำเสร็จ มันจะ shutdown และคุณจะไม่เห็น mscorsvw.exe อีกแล้ว สิ่งสำคัญคือ แม้คุณจะเห็น CPU usage 100% กระบวนการคอมไพล์เกิดขึ้นในกระบวนการที่มี priority ต่ำ ดังนั้นมันพยายามไม่ยึด CPU สำหรับงานอื่นที่คุณทำ เมื่อคอมไพล์เสร็จ assemblies จะสามารถแชร์หน้าหน้ากระบวนการต่างๆ ได้ และ warm startup จะเร็วขึ้นมาก ดังนั้นเราจึงไม่ได้ทิ้งรอบ CPU ของคุณไปเปล่า

สาเหตุคือ กระบวนการ mscorsvw.exe กำลังคอมไพล์ .NET assemblies ใหม่ในพื้นหลัง ปกติกระบวนการจะหายไปหลังจากสักครู่ และความเร็วคอมพิวเตอร์ควรกลับสู่ปกติ แม้คุณจะต้องการ คุณก็ไม่สามารถ kill กระบวนการนี้ได้ในวิธีปกติ

mscorsvw.exe เป็นไวรัสหรือไม่?

ไฟล์ mscorsvw.exe ที่ถูกต้อง (legit) อยู่ที่:

C:\Windows\Microsoft.NET\Framework\

หรือ

C:\Windows\Microsoft.NET\Framework64

หากพบที่อื่น อาจเป็นมัลแวร์

เราต้องการ mscorsvw.exe หรือไม่?

.NET Runtime Optimization Service (mscorsvw.exe) ใช้ในการคอมไพล์ .NET assemblies ในพื้นหลังในระบบปฏิบัติการ Windows จึงจำเป็น

ปิดใช้งาน mscorsvw.exe ได้อย่างไร?

คุณ ไม่ควร ปิดใช้งาน mscorsvw.exe หากต้องการ คุณสามารถ terminate กระบวนการนี้ได้

เปิด Task Manager คลิกแท็บ Details หากระบวนการ mscorsvw.exe คลิกขวาเลือก End process tree

ปัญหา High CPU usage โดย mscorsvw.exe

บางครั้ง คุณอาจเห็น CPU usage สูงโดย .NET Runtime Optimization Service (mscorsvw.exe) หากเปิด Task Manager ในสถานการณ์นี้ คุณจะพบกระบวนการ mscorsvw.exe ที่มี CPU usage เกิน 50%! บริการนี้ถูกใช้โดย .NET framework เพื่อ pre-compile ดังนั้น mscorsvw.exe คืออะไร และจัดการอย่างไร?

เหมือนที่กล่าวไว้ สาเหตุคือ mscorsvw.exe กำลังคอมไพล์ .NET assemblies ใหม่ในพื้นหลัง ปกติจะหายไปหลังสักครู่ และความเร็วคอมพิวเตอร์ควรกลับสู่ปกติ แม้คุณต้องการ ก็ kill ไม่ได้ในวิธีปกติ

เพราะ mscorsvw.exe เป็น system process เมื่อพยายามปิดโดยตรงด้วย Task Manager คุณจะทำไม่ได้! คุณต้องใช้ CMD อย่างชำนาญ

หากไม่ต้องการรอจนคอมพิวเตอร์ idle ให้เริ่มคอมไพล์ คุณสามารถทำได้ดังนี้:

  1. ไปที่ C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319 ใน Windows Explorer
  2. คลิก Start พิมพ์ CMD รันเป็น Admin
  3. ใน Command prompt ระบุพาธด้านบน และพิมพ์ ngen.exe executequeueditems.
  4. คำสั่งนี้จะประมวลผลงานที่ค้างทั้งหมด
  5. เมื่อเสร็จ บริการจะ shutdown เนื่องจากไม่มีงานเหลือ
  6. รีสตาร์ทคอมพิวเตอร์ ตอนนี้จะไม่เห็นกระบวนการ mscorsvw.exe ใน Task Manager

บทความนี้มีคำแนะนำเพิ่มเติมเกี่ยวกับการแก้ไข .NET Runtime Optimization Service High CPU usage บน Windows 11/10