Stoppa Safari Autopreserverande webbsidor i Mac OS X Lion

Ett nytt tillägg till Safari 5.1 i Mac OS X 10.7 är att webbsidor automatiskt uppdateras om de lämnas inaktiva under en tidsperiod. Funktionen kan verka onödig och till och med irriterande, men det finns inget klart preferensalternativ för att inaktivera omladdning av sidor. Lyckligtvis visar Stormcloud (via DaringFireball) hur vi stoppar detta irriterande beteende i Safari 5.1. Här är play-by-play för att inaktivera det:

  • Avsluta Safari, starta sedan Terminal (finns i / Program / Verktyg /) och ange följande kommando
  • defaults write com.apple.Safari IncludeInternalDebugMenu 1

  • Starta om Safari och du får se en "Debug" -meny visas längst till höger, bredvid "Hjälp" (ja det skiljer sig från utvecklingsmenyn)
  • Dra ner den nya Debug-menyn och rulla ner ett sätt tills du ser "Använd Multi-Process Windows" och markera den så att den är avmarkerad
  • Öppna ett nytt Safari-fönster och om du ser en [SP] bredvid titeln på webbsidorna, är du nu i enkel processläge, vilket förhindrar automatisk uppdatering av webbsidor

Om du undrar varför att ändra en inställning som heter multi-process windows påverkar automatisk omladdning av webbsidor, ger Stormcloud en bra beskrivning av vad den här funktionen är och hur den fungerar:

Så vad är ett "multi-process fönster" i alla fall?

En av de nya funktionerna i Safari 5.1 är en stor ny version av den underliggande motorn - WebKit2. Under WebKit2s nya processarkitektur består Safari av två separata processer - "UI-processen" (Safari-programmet, inklusive adressfältet, verktygsfältet, bokmärkesfältet, menyerna, etc.) och "webprocessen" (en självständig process som laddar och visar faktiska webbsidor).
Bortsett från andra mål är syftet med detta att ge en viss grad av kraschskydd. Även om det hindrar hela Safari-programmet från att krascha (åtminstone så långt jag har sett), skyddar det dig inte från att förlora allt du har skrivit i textfält på webbsidor. Allt webbinnehåll hanteras av en enda webbprocess, så om någon sida störs och orsakar att webprocessen kraschar, laddas alla öppna flikar om, och allt du har skrivit in på någon av dessa sidor kommer att gå vilse. Dessutom kommer alla nedladdningar som pågår också att stoppas. du kanske kan återuppta några nedladdningar, men många måste startas över. Detta kan vara mycket frustrerande när du hämtar stora filer.

Av den anledningen är fördelarna med den nya multi-processarkitekturen något tvivelaktiga, åtminstone tills Apple klarar av att ta itu med frågan om spontant omladdning av flikar (förutsatt att det även är möjligt att förhindra detta beteende utan att omforma den övergripande arkitekturen för WebKit igen).

I grund och botten är det en väl avsedd funktion, men det orsakar också vissa användarhuvudvärk. I vissa fall får det Safari att ta upp mycket mer minne än det borde, och det kan till och med orsaka långsamma program. Förmodligen kommer allt detta att fixas i en mjukvaruuppdatering.

Den stora varningen om att köra Safari 5.1 i ett processläge: många plugins och tillägg fungerar inte, framför allt (och irriterande) ad blockerare, ClickToFlash och 1password. Du måste bestämma om det är värt det, eller du kan alltid bara använda Chrome eller Firefox.