Safari 8.0 บน Yosemite ไม่ได้ฆ่ากระบวนการแท็บปิดหน่วยความจำ hogs


7

ฉันเพิ่งอัพเกรดเป็นโยเซมิตีและเริ่มใช้ Safari 8.0 ใหม่ ในขณะที่ทุกอย่างดูเหมือนจะดี แต่แล้วทุกอย่างก็ช้าลงเรื่อย ๆ โดยเฉพาะเมื่อเปลี่ยนเดสก์ท็อป

หลังจากหมดความอดทนฉันเปิดการตรวจสอบกิจกรรมและทำให้ตกใจฉันพบกระบวนการ Safari Web Content แบบเก่า ๆ ที่ยังทำงานและใช้หน่วยความจำจำนวนมากแม้จะมีแท็บที่ปิดไปแล้วก็ตาม

ใครสังเกตเห็นสิ่งที่คล้ายกัน? หรือรู้วิธีบังคับให้ Safari ฆ่ากระบวนการหลังจากปิดแท็บ

(Macbook Pro, กลางปี ​​2012, 13 นิ้ว, 4GB RAM)


พฤติกรรมนี้เกิดขึ้นทุกครั้งหรือไม่
Matthieu Riegler

ใช่ - เมื่อใดก็ตามที่ฉันปิดแท็บกระบวนการต่างๆจะยังคงทำงานอยู่ในพื้นหลัง
metjush

ฉันหมายถึงทุกครั้งหลังจากที่คุณรีสตาร์ท Safari!
Matthieu Riegler

ฉันออกจาก Safari ตรวจสอบว่ากระบวนการทั้งหมดได้หายไปแล้วและเริ่มต้นใหม่ มันจะไม่เกิดขึ้นอีกแล้ว
metjush

1
ดังนั้นอาจไม่ใช่ข้อผิดพลาดถาวร แต่เป็นข้อผิดพลาดอย่างไรก็ตาม
metjush

คำตอบ:


2

ฉันเคยเห็นสิ่งนี้มาตั้งแต่ Safari 8 บน OS X 10.9.5, OS X 10.10.x ทุกรุ่นที่มี Safari 8 และน่าเศร้าใน Safari 9 บน El Capitan ทั้งหมดจนถึงปัจจุบัน หน่วยความจำ Safari รั่วในกรณีของฉันรุนแรงและ Safari ต้องเลิก & เริ่มต้นใหม่อย่างสมบูรณ์บ่อยครั้ง ดูเหมือนว่าจะเกิดขึ้นหากคุณมีแนวโน้มที่จะเปิดหน้าต่างไม่กี่บานซึ่งคุณ "นำกลับมาใช้ใหม่"; แต่โดยรวมแล้ว Safari เพิ่งเติบโตและโตขึ้นเรื่อย ๆ (หลาย GB)

คำแนะนำเกี่ยวกับ "การเพิ่มหน่วยความจำ" เป็นเรื่องไร้สาระ ฉันเป็นแล็ปท็อป 16GB Macbook Pro ซึ่งเป็นการกำหนดค่าสูงสุดของหน่วยความจำแบบบัดกรี ("โปร" ของฉัน!) ที่ Apple ให้ มันเป็นไปไม่ได้ที่จะเพิ่มอีก ความกดดันของหน่วยความจำและการชะลอตัวมีแนวโน้มที่สำคัญเมื่อ Safari เกิน 10GB ฉันเคยยืนยันถึงจุดที่ใช้งานมากกว่า 13GB เมื่อเริ่มต้นใหม่ด้วยแท็บทั้งหมดมาใหม่ด้วยตนเองเพื่อให้แน่ใจว่าโหลดหน้าทั้งหมดแล้วมันจะกลับไปที่ประมาณ 2.5Gb การรั่วไหลของขนาดนั้นไม่สามารถป้องกันได้อย่างเต็มที่

นี่เป็นพฤติกรรมที่เปลี่ยนไปอย่างสิ้นเชิงจาก Safari 7 ซึ่งทำงานได้ดีในเรื่องนี้ - แต่ก็มีรายงานไม่กี่อย่างที่น่าประหลาดใจทางออนไลน์ มันไม่ได้เป็นปัญหาที่ลึกซึ้งและ Safari 8 มานานแล้ว คนอื่นจะสังเกตเห็น แต่รายงานน้อย

ฉันเห็นมันบนเครื่อง 10.9.5, 10.10 แล็ปท็อปที่บ้าน, 10.11 ทดสอบแล็ปท็อปและยิ่งกว่านั้นคือ 10.10 แล็ปท็อปในที่ทำงาน ข้อสรุปของฉันคือสิ่งนี้จะต้องเกิดขึ้นเมื่อ Safari มีบุ๊กมาร์กคุกกี้แคชและ / หรือข้อมูลอื่น ๆ อยู่และข้อมูลนี้ต้องเป็นส่วนหนึ่งของสิ่งที่แบ่งปันผ่าน iCloud - ไม่เช่นนั้นฉันจะไม่คาดหวังว่า โดยผู้จำหน่ายแล็ปท็อปที่ทำงานโดย IT เพื่อแสดงพฤติกรรมที่เหมือนกันทุกประการ

บรรทัดล่างคือสิ่งนี้น่าจะเป็นข้อมูลผู้ใช้ สูดลมหายใจลึก ๆ และทำการรีเซ็ต Safari อย่างสมบูรณ์ - ทำบุ๊กมาร์ก iCloud ของคุณล้างทุกอย่างจากทุกอินสแตนซ์ Safari ในบัญชี iCloud การลบ ~ / Library / Safari และอื่น ๆอาจทำงานได้ตามฟอรัมนักพัฒนาซอฟต์แวร์ แต่เช่นเคยกับ Apple ตั้งแต่ OS X 10.7 คร่าวๆมันเป็นเรื่องยุ่งเหยิงและไม่มีการฆ่าไก่แบบ psuedorandom จะรับประกันได้ว่าจะแก้ไขปัญหาของคุณได้

กระบวนการหลงทางแท็บที่ปิดแล้วอาจจะเป็น "ส่วนขยายที่ไม่ดี" แต่นั่นไม่ใช่ข้อแก้ตัว - ส่วนขยายอยู่ภายใต้การควบคุมของ Safari และส่วนขยายที่ไม่ดีจะไม่สามารถทำลายเบราว์เซอร์ได้ มันเป็นแค่รหัส JavaScript ที่ทำงานอย่างสมบูรณ์ภายใต้การดูแลของเบราว์เซอร์ ถึงกระนั้นเรารู้ว่า Safari จะต้องมีรหัสที่แย่มากสำหรับการสนับสนุนส่วนขยายที่มีประวัติที่มีปัญหาดังนั้นจึงควรตรวจสอบหากคุณยังไม่ได้


1

"Web Content Process" = "Tab" เป็นข้อผิดพลาด กระบวนการเนื้อหาเว็บสามารถเก็บได้มากกว่าหนึ่งแท็บ ขึ้นอยู่กับรายละเอียดการติดตั้ง Safari อาจเป็นไปได้ว่าหลังจากปิดแท็บสุดท้ายที่เกี่ยวข้องกับกระบวนการเนื้อหาเว็บโดยเฉพาะไม่ได้หมายความว่าจะปิดกระบวนการเนื้อหาเว็บโดยอัตโนมัติ อาจเป็นไปได้สำหรับ Safari ที่จะทำให้กระบวนการนั้นว่างในพื้นหลังพร้อมที่จะใช้แท็บใหม่เมื่อจำเป็น ฉันคิดว่า Mavericks Safari ทำงานแบบเดียวกัน

จากประสบการณ์ที่คุณ "ช้าลงและช้าลง": อาจเป็นเพราะ RAM 4GB นั้นไม่เพียงพอสำหรับภาระงานปกติของคุณ เป็นผลให้ใช้หน่วยความจำเสมือน นั่นหมายถึง HDD ของคุณ (หรือ SSD) ใช้เป็นส่วนเสริมสำหรับ RAM ของคุณเมื่อต้องการหน่วยความจำเพิ่มเติมเพื่อขับเคลื่อนกระบวนการเปิดทั้งหมด การใช้ HDD หมายถึงการชะลอตัว SSD นั้นดีกว่าในเรื่องนั้น

ฉันใช้ Safari 7 บน Mavericks ฉันจะไม่ทดสอบตอนนี้จะเกิดอะไรขึ้นเมื่อปิดแท็บจำนวนมากพอ แต่ให้ฉันอธิบายสถานการณ์ปกติของ MBP ของฉัน: ในขณะนี้ Safari ของฉันมี 4 หน้าต่างที่เปิดอยู่แต่ละอันมี 10 ถึง 40 แท็บโดยมีแท็บรวม ~ 100 เปิด ในการตรวจสอบกิจกรรมฉันสามารถดูกระบวนการเนื้อหาเว็บได้ 20 กระบวนการแต่ละกระทู้ 9 ถึง 12 เธรด นอกจากนี้ฉันมี 13 QTKitserver กระบวนการเนื้อหาเว็บแต่ละ 2 เธรด กระบวนการเนื้อหาเว็บทั้งหมดมี PID 3 หลักซึ่งหมายความว่าพวกเขาเริ่มเมื่อเริ่มต้นหลังจากการรีบูตครั้งล่าสุดของฉันซึ่งเป็น 3 วันที่ผ่านมา ดังนั้นกระบวนการเนื้อหาเว็บจึงถูกนำกลับมาใช้ใหม่โดย Safari หากพวกเขาเป็นกระบวนการใหม่พวกเขาจะได้รับหมายเลข PID 4 หรือ 5 หลัก แม้ว่าฉันยอมรับว่าฉันไม่ได้เปิดและปิดแท็บจำนวนมากตั้งแต่รีบูตครั้งล่าสุด ฉันมี 8GB RAM และ SSD ในช่วงปลายปี 2009 MBP

คุณสามารถอ่านได้ในบางสถานที่ที่โยเซมิตีต้องการ RAM มากกว่า Mavericks เล็กน้อย อาจจะเพียงพอที่จะทำให้ระบบ 4GB ของคุณช้าลงเมื่อเทียบกับ Mavericks แม้ว่ามันจะไม่เลวร้ายไปกว่า Mavericks มากนัก โดยวิธีการอ่านที่ดีในการจัดการหน่วยความจำสำหรับ 10.9 สามารถพบได้ที่นี่

ด้านล่าง: พิจารณาติดตั้ง 8GB RAM มันราคาถูกสำหรับ MBP ที่ไม่ใช่จอประสาทตา

และคุณสามารถทำมันได้ด้วยตัวคุณเอง เพียงแค่คิดออกก่อนซึ่ง RAM โมดูลสำหรับ MBP รุ่นของคุณ: https://support.apple.com/kb/HT201165?viewlocale=en_US#1

ดูเหมือนว่าแม้ 16GB จะเป็นไปได้สำหรับ MBP ที่เก่ากว่าถ้ามีใครโชคดี ระวังหัวข้อ 16GB นี้ต้องการการวิจัยเพิ่มเติม: https://forums.macrumors.com/showthread.php?t=1511196

แต่ฉันไม่ทราบว่าเป็นสิ่งจำเป็นในกรณีของคุณ ในความเห็นที่ต่ำต้อยของฉัน 8GB นั้นใช้ได้


Safari เวอร์ชัน Mavericks ทำเพื่อความรู้ของฉันไม่ทำงานในลักษณะเดียวกัน ในความคิดของฉันนี่เป็นข้อผิดพลาด มันไม่มีเหตุผลที่ Safari จะทำให้ "กระบวนการเนื้อหาเว็บ" ทำงานต่อไปโดยใช้หน่วยความจำสูงสุด 100MB ใน RAM กระบวนการเหล่านี้ควรได้รับการทำความสะอาดเมื่อปิดแท็บที่เกี่ยวข้อง
Adriaan Tijsseling

การใช้ RAM ควรลดลงเมื่อปิดแท็บ เป็นไปได้ว่าการล้างข้อมูลจะไม่เกิดขึ้นทันที แต่หลังจากผ่านไประยะหนึ่งกระบวนการเนื้อหาเว็บจะแสดงจำนวนที่น้อยลงสำหรับการใช้ mem การนับจำนวนเธรดต้องไม่ลดขนาดเป็นรูปแบบการเขียนโปรแกรมทั่วไปเพื่อให้เธรดเปิดอยู่ในพูลเธรด แต่ฉันเริ่มเก็งกำไรฉันยังคงอยู่ใน Mavericks และจะอยู่พักหนึ่ง :) จุดที่ฉันต้องการทำเมื่อดูเฉพาะตัวเลขเหล่านั้นใน Activity Monitor ไม่ได้หมายถึงทุกสิ่งเพราะระบบปฏิบัติการมีวิธีการที่ซับซ้อนในการจัดการการใช้หน่วยความจำ
Anon

“ กระบวนการเหล่านี้ควรได้รับการทำความสะอาดเมื่อปิดแท็บที่เกี่ยวข้อง” ดีถ้าคุณปิดแท็บแล้วกด⌘Zมันจะเปิดแท็บอีกครั้ง อาจเป็นอีกสาเหตุหนึ่งที่ทำให้กระบวนการทางเว็บไม่ได้ถูกทำลายทันทีเมื่อคุณปิดแท็บ
Zearin

ดูคำตอบของฉัน Safari 7 ไม่แสดงปัญหาและแนะนำให้ใครบางคนเพิ่มหน่วยความจำเมื่อพวกเขารายงานว่ามีการรั่วไหลของหน่วยความจำที่เห็นได้ชัดนั้นไม่ต้องสงสัยเลย แต่ท้ายที่สุดแล้วก็ไม่ได้มีประโยชน์มากนัก
Andrew Hodgkinson
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.