Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

แก้ไข: CPU สูงโดย .NET Runtime Optimization Service

ปัญหานี้มักเกิดขึ้นแบบสุ่ม แต่ก็อาจเกิดหลังอัปเดต .NET Framework กระบวนการนี้ชื่อ mscorsvw.exe จะแสดงใน Task Manager ภายใต้ชื่อนี้หรือชื่อ .NET Runtime Optimization Service เป็นบริการที่ทำงานเพื่อเพิ่มประสิทธิภาพ .NET Framework ทำให้แอปที่พึ่งพามันทำงานเร็วขึ้น

แก้ไข: CPU สูงโดย .NET Runtime Optimization Service

อย่างไรก็ตาม การเพิ่มประสิทธิภาพนี้บางครั้งใช้เวลานานมาก ผู้ใช้รายงานว่ากินทรัพยากร CPU สูงมากตลอดหลายวัน ลองทำตามวิธีด้านล่างเพื่อแก้ไขปัญหา

สาเหตุของ CPU สูงโดย .NET Runtime Optimization Service

คำตอบทางการคือ กระบวนการต้องคอมไพล์ไลบรารีใหม่ และควรทำงานเฉพาะเมื่อคอมพิวเตอร์ว่าง Microsoft ระบุว่าไม่ควรเกินไม่กี่นาที แต่ความจริงผู้ใช้รอนานกว่าหนึ่งสัปดาห์โดยไม่มีความคืบหน้า สาเหตุที่เป็นไปได้:

  • โดยทั่วไป ทำงานช้า สามารถเร่งได้โดยรันคำสั่งบางคำสั่ง
  • อาจมี มัลแวร์ทำงานอยู่ ซึ่งปลอมตัวเป็นบริการนี้ หรือบริการนี้ถูกติดเชื้อ ลองสแกนมัลแวร์ ในบางกรณี AntiMalware service ก็อาจกินทรัพยากรสูงเช่นกัน
  • บริการอาจเสียหาย ควรลองรีสตาร์ทบริการ

ซ่อมแซมไฟล์ที่เสียหาย

ดาวน์โหลดและรัน Restoro เพื่อสแกนและกู้คืนไฟล์ที่เสียหายหรือหายไปจาก ที่นี่ เมื่อเสร็จแล้ว ดำเนินการตามวิธีด้านล่าง

วิธีที่ 1: เพิ่มประสิทธิภาพกระบวนการ

ไม่แนะนำให้หยุดกระบวนการนี้ทันที เพราะมันช่วยให้คอมพิวเตอร์และแอป/เกมทำงานดีขึ้น แต่มีวิธีเร่งกระบวนการโดยรันคำสั่งหรือสคริปต์เพื่อให้ใช้ CPU cores มากขึ้น ทำให้เสร็จเร็วขึ้น ดูขั้นตอนด้านล่าง:

  1. ค้นหา "Command Prompt" ใน Start menu หรือกดปุ่มค้นหา คลิกขวาผลลัพธ์แรก เลือก "Run as administrator"
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. ผู้ใช้ Windows รุ่นเก่า ใช้ Windows Logo Key + R เปิด Run dialog box พิมพ์ "cmd" กด Ctrl + Shift + Enter เพื่อรัน Command Prompt เป็น Admin
  2. คัดลอกและวางคำสั่งด้านล่าง กด Enter หลังแต่ละคำสั่ง เลือกคำสั่ง 2 อันแรกตามระบบปฏิบัติการ (32-bit ใช้อันแรก 64-bit ใช้อันที่สอง)
cd c:\Windows\Microsoft.NET\Framework\v4.0.30319
cd c:\Windows\Microsoft.NET\Framework64\v4.0.30319
ngen.exe executequeueditems
  1. ตรวจสอบว่า CPU usage ของ .NET Runtime Optimization Service กลับสู่ปกติหรือไม่

ทางเลือก: หากไม่สะดวกรันคำสั่งเอง หรือใช้ Windows รุ่นเก่า สามารถใช้สคริปต์ทางการของ Microsoft ที่ทำงานเหมือนกันได้

  1. ไปที่ลิงก์นี้เพื่อเปิดหน้า GitHub ของสคริปต์ เลื่อนลงไปที่โค้ด คลิกขวาปุ่ม Raw เลือก Save link as… ตรวจสอบว่าไฟล์เป็น Windows Script File (*.wsf)
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. หาไฟล์ที่บันทึกไว้ ดับเบิลคลิกเพื่อรัน ถ้าถูกถามให้เลือกโปรแกรม เลือก Windows Script Host
  2. ตรวจสอบว่าปัญหาแก้ไขแล้วหรือไม่

วิธีที่ 2: สแกนมัลแวร์ในคอมพิวเตอร์

แม้จะดูมากเกินไป แต่การติดเชื้อมัลแวร์เป็นสาเหตุหลักของปัญหานี้ จำเป็นต้องตรวจสอบ โปรแกรมอันตรายต้องการทรัพยากร และมักตั้งชื่อกระบวนการคล้ายไฟล์ในระบบ

นี่คือวิธีสแกนด้วย Malwarebytes ซึ่งมักให้ผลดีที่สุดเพราะมีฐานข้อมูลใหญ่ โชคดี!

  1. Malwarebytes Anti-Malware เป็นเครื่องมือป้องกันมัลแวร์ยอดเยี่ยม มีเวอร์ชันทดลองฟรีจากเว็บไซต์ทางการ ดาวน์โหลดเวอร์ชันทดลองได้ ที่นี่
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. หาไฟล์ที่ดาวน์โหลดในโฟลเดอร์ Downloads ดับเบิลคลิก เพื่อเปิด
  2. เลือกตำแหน่งติดตั้ง Malwarebytes และ ทำตามคำแนะนำการติดตั้ง บนหน้าจอ
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. เปิด Malwarebytes จาก Start menu หรือ Desktop เลือก Scan ที่หน้าหลัก
  2. เครื่องมืออาจอัปเดตฐานข้อมูลไวรัสก่อน แล้วค่อยสแกน รอจนเสร็จ ถ้าพบมัลแวร์ ยืนยันให้ ลบ หรือ กักกัน
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. รีสตาร์ทคอมพิวเตอร์ หลังสแกนเสร็จ ตรวจสอบว่าปัญหา .NET Runtime Optimization Service ยังคงอยู่หรือไม่

หมายเหตุ: ควรใช้สแกนเนอร์ความปลอดภัยอื่นๆ ด้วย หากทราบประเภทมัลแวร์ (ransomware, junkware ฯลฯ) เพราะสแกนเนอร์ตัวเดียวไม่จับได้ทุกประเภท

วิธีที่ 3: รีสตาร์ทบริการ

การรีสตาร์ทบริการจะเริ่มกระบวนการใหม่ และควรเสร็จเร็วขึ้นครั้งนี้ โดยเฉพาะถ้าเป็นบั๊กที่ทำให้ทำงานผิดปกติ ลองดูด้านล่าง:

  1. เปิด Run utility ด้วย Windows Key + R พิมพ์ "services.msc" แล้วกด OK เพื่อเปิดเครื่องมือ Servicesแก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. หา NVIDIA Telemetry Container ในรายการ คลิกขวาเลือก Properties
  2. ถ้าบริการเริ่มแล้ว (ดูจาก Service status) ให้หยุดโดยกด Stop แล้วกด Start ใหม่
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. ตรวจสอบว่า Startup type ตั้งเป็น Automatic ก่อนดำเนินต่อ ยืนยันกล่องโต้ตอบที่ปรากฏ

อาจได้ข้อความผิดพลาดเมื่อกด Start:

"Windows could not start the service on Local Computer. Error 1079: The account specified for this service differs from the account specified for other services running in the same process."

ถ้าเกิดขึ้น ทำตามขั้นตอนด้านล่าง:

  1. ทำขั้นตอน 1-3 อีกครั้งเพื่อเปิด Properties ของบริการ ไปแท็บ Log On คลิก Browse…
แก้ไข: CPU สูงโดย .NET Runtime Optimization Service
  1. ในช่อง "Enter the object name to select" พิมพ์ชื่อบัญชีของคุณ คลิก Check Names รอจนชื่อพร้อมใช้งาน
  2. คลิก OK ใส่รหัสผ่านในช่อง Password ถ้าถูกถาม ควรเริ่มได้โดยไม่มีปัญหา

วิธีที่ 4: ทำ Clean Boot

ในบางกรณี แอปของบุคคลที่สามอาจก่อให้เกิด CPU สูงเนื่องจากต้องการการเพิ่มประสิทธิภาพ ขั้นตอนนี้จะทำ Clean Boot เพื่อตรวจสอบว่ามีแอปภายนอกรบกวนบริการหรือไม่ ทำตามคู่มือ Clean Boot ของเรา แล้วตรวจสอบ CPU usage หากต่ำลง แสดงว่าเป็นแอปภายนอกก่อให้เกิด แล้วคุณสามารถหาตัวทำให้เกิดปัญหาได้โดยเปิดใช้งานแอปทีละตัว