Stoppen Sie die automatische Safari-Aktualisierung von Webseiten in Mac OS X Lion

Eine neue Ergänzung von Safari 5.1 in Mac OS X 10.7 besteht darin, dass Webseiten automatisch aktualisiert werden, wenn sie für eine bestimmte Zeit inaktiv bleiben. Die Funktion kann unnötig und sogar ärgerlich erscheinen, aber es gibt keine klare Voreinstellung, um das erneute Laden von Seiten zu deaktivieren. Zum Glück zeigt uns Stormcloud (via DaringFireball), wie man dieses lästige Verhalten in Safari 5.1 stoppt. Hier ist das Play-by-Play, um es zu deaktivieren:

  • Beenden Sie Safari, starten Sie das Terminal (in / Applications / Utilities /) und geben Sie den folgenden Befehl ein
  • defaults write com.apple.Safari IncludeInternalDebugMenu 1

  • Relaunch Safari und Sie sehen ein "Debug" -Menü ganz rechts neben "Hilfe" (ja, das ist anders als im Menü "Entwickeln")
  • Ziehen Sie das neue Debug-Menü nach unten und scrollen Sie nach unten, bis Sie "Mehrprozess-Windows verwenden" sehen und wählen Sie es aus, so dass es nicht markiert ist
  • Öffnen Sie ein neues Safari-Fenster, und wenn neben dem Webseitentitel ein [SP] angezeigt wird, befinden Sie sich jetzt im Einzelprozessmodus, wodurch das automatische Aktualisieren von Webseiten verhindert wird

Wenn Sie sich fragen, warum das Ändern der Einstellung "Multiprozessfenster" das automatische Neuladen von Webseiten beeinflusst, bietet Stormcloud eine gute Beschreibung dessen, was diese Funktion ist und wie sie funktioniert:

Was ist ein "Multi-Prozess-Fenster"?

Eine der neuen Funktionen in Safari 5.1 ist eine neue Hauptversion der zugrunde liegenden Engine - WebKit2. Unter der neuen Prozessarchitektur von WebKit2 besteht Safari aus zwei separaten Prozessen - dem "UI-Prozess" (die Safari-Anwendung selbst, einschließlich Adressleiste, Symbolleiste, Lesezeichenleiste, Menüs usw.) und dem "Webprozess" (ein unabhängiger Prozess) die aktuelle Webseiten lädt und anzeigt).
Abgesehen von anderen Zielen besteht der Zweck darin, ein gewisses Maß an Unfallschutz bereitzustellen. Es verhindert zwar, dass die gesamte Safari-Anwendung abstürzt (zumindest soweit ich es gesehen habe), aber es schützt Sie nicht davor, alles zu verlieren, was Sie in Textfelder auf Webseiten eingegeben haben. Alle Webinhalte werden in einem einzigen Webprozess verarbeitet. Wenn also eine Seite fehlschlägt und der Webprozess zum Absturz gebracht wird, werden alle geöffneten Tabs neu geladen, und alles, was Sie in eine dieser Seiten eingegeben haben, geht verloren. Darüber hinaus werden alle laufenden Downloads angehalten. Sie können möglicherweise einige Downloads fortsetzen, aber viele müssen neu gestartet werden. Dies kann sehr frustrierend sein, wenn Sie große Dateien herunterladen.

Aus diesem Grund sind die Vorteile der neuen Multi-Prozess-Architektur etwas zweifelhaft, zumindest bis Apple das Problem des spontanen Neuladens von Tabs bewältigt (vorausgesetzt, es ist sogar möglich, dieses Verhalten zu verhindern, ohne die gesamte Architektur von WebKit neu zu gestalten).

Grundsätzlich ist es eine gut gemeinte Funktion, aber es verursacht auch einige Benutzer Kopfschmerzen. In einigen Fällen benötigt Safari viel mehr Speicherplatz, als es eigentlich sollte, und kann sogar zu Verlangsamungen der App führen. Vermutlich wird dies jedoch in einem Software-Update behoben.

Der große Vorbehalt, Safari 5.1 im Single-Process-Modus laufen zu lassen: viele Plugins und Erweiterungen funktionieren nicht, vor allem (und ärgerlich) Ad-Blocker, ClickToFlash und 1password. Sie müssen entscheiden, ob sich dieser Kompromiss lohnt, oder Sie können immer nur Chrome oder Firefox verwenden.