helpd verwendet 100 % CPU nach der Installation einer Anwendung mit Dokumentation

Ich sehe, dass nach der Installation einer Software, die mit Dokumentation im Hilfedokumentformat von OS X geliefert wird, der helpdProzess bis zu 5 Minuten lang 100 % CPU verwendet. Ich sehe das auch, wenn Sie OS X zum ersten Mal installieren.

Ich gehe davon aus, dass dies auf die Indizierung der neuen Dokumentation zurückzuführen ist, die von der neuen Anwendung hinzugefügt wurde.

Gibt es eine Möglichkeit, diese Indizierung etwas weniger ressourcenintensiv zu gestalten?

Verlangsamen vielleicht? Wenn es passiert, kriecht mein System einfach zum Stillstand, bis es fertig ist.

Hat noch jemand das gleiche Problem?

Dies scheint nicht normal zu sein, aber was ist eine Beispielanwendung, die die Langsamkeit der Indizierung anzeigt. Welche Version von Mac OS X verwenden Sie? Was für einen Mac verwendest du?

Antworten (1)

Aus Thread https://discussions.apple.com/thread/3209466

« 2. Januar 2012 11:45 als Antwort auf zeBob

Helpd aktualisiert alle Hilfedateien der Anwendung auf Ihrem Mac.

Ich hasse es jedoch, dabei geholfen zu haben, wiederholt und scheinbar zufällig zu starten, 1 GB RAM zu beanspruchen und so viel CPU-Zeit zu verbrauchen, dass die Lüfter auf meinem MacBook Pro lautstark auf Hochtouren laufen. Ich bevorzuge es, wenn mein MacBook Pro leise ist.

Bei der Untersuchung habe ich festgestellt, dass helpd von einer System LaunchAgent-Plist gesteuert wird, die beim Start ausgeführt wird:

/System/LaunchAgents/com.apple.helpd.plist

Wenn Sie den Inhalt dieser Liste mit XCode untersuchen, finden Sie Folgendes:

  1. helpd wird ausgeführt, wenn es vom System beim Start oder bei der Anmeldung geladen wird

  2. helpd findet jeden Sonntag um 2:30 Uhr statt

  3. Der Startagent überwacht die folgenden Ordner und führt Hilfe aus, wenn sich die Ordner ändern:

    /Anwendungen/

    /Anwendungen/Dienstprogramme/

Das größte Problem sind die Überwachungsordner. Sie ändern sich jedes Mal, wenn Sie sie öffnen (dh ihr Änderungsdatum ändert sich beim Öffnen). Sie ändern sich, wenn Sie eine neue Anwendung installieren. Viele Anwendungen ändern den Inhalt ihres Anwendungsordners, wenn sie ausgeführt werden. usw. usw.

(Lingon ist ein vereinfachter Launch-Agent und Launch-Daemon-Editor. Lingon 3 kann übrigens nichts anderes als die Launch-Agents und Launch-Daemons Ihres eigenen Benutzers verwalten. Es wird durch Apples neue App Store-Regeln eingeschränkt. Lingon 2 kann den Systemstart öffnen agetns und Launch Daemons. Aber es fehlen viele der Plist-Felder, die durch die Verwendung von XCode angezeigt werden. Zum Beispiel wird es den Überwachungsordner /Applications/ anzeigen. Aber es gibt ZWEI Überwachungsordner - der zweite ist /Applications/Utilities/. Lingon kann Probleme verursachen, wenn die Systemstartagenten und Daemon-Listen geändert werden, indem mehrere Felder fehlen. Ich empfehle Lingon nur, Ihre eigenen Benutzerstartagenten und Daemons zu erstellen - wobei Lingon 2 eine viel leistungsfähigere Version ist.)

Die einfachste Lösung besteht darin, Xcode oder einen anderen Plist-Editor zu verwenden, um die com.apple.helpd.plist zu ändern, um die Überwachungsordner zu ändern.

Ich habe /Applications/ in /Applications/Utilities/ geändert und den zweiten Überwachungsordner /Applications/Utilities/ verlassen.

Da ich /Applications/Utilities/ selten öffne, half dies, viel seltener zu starten.

Sie können die Überwachungsordner auch einfach löschen. Dies wird sonntags um 2:30 Uhr oder beim Starten oder Anmelden weiter ausgeführt.

Wenn Benutzer viele ältere Anwendungen loswerden, wird ihnen beim Starten seltener geholfen, da diese älteren Anwendungen möglicherweise diejenigen sind, die den Ordner /Applications/ ändern.

Wenn Sie nur neuere Anwendungen oder wenige Anwendungen haben, stoßen Sie nicht so oft oder gar nicht auf das Helpd-Problem. Aus diesem Grund beschweren sich nur wenige über Hilfe. Dieses Problem tritt nur bei Benutzern auf, die über zahlreiche Anwendungen verfügen (insbesondere ältere oder nicht im App Store gekaufte).

Hier sind die Inhalte der com.apple.helpd.plist:

      <key>EnableTransactions</key>

      <true/>

      <key>EnvironmentVariables</key>

      <dict>

                <key>NSRunningFromLaunchd</key>

                <string>1</string>

      </dict>

      <key>Label</key>

      <string>com.apple.helpd</string>

      <key>LimitLoadToSessionType</key>

      <array>

                <string>Aqua</string>

                <string>LoginWindow</string>

      </array>

      <key>MachServices</key>

      <dict>

                <key>com.apple.helpd</key>

                <true/>

      </dict>

      <key>OnDemand</key>

      <true/>

      <key>Program</key>

      <string>/System/Library/PrivateFrameworks/HelpData.framework/Versions/A/Resourc es/helpd</string>

      <key>RunAtLoad</key>

      <true/>

      <key>StartCalendarInterval</key>

      <dict>

                <key>Hour</key>

                <integer>2</integer>

                <key>Minute</key>

                <integer>30</integer>

                <key>Weekday</key>

                <integer>7</integer>

      </dict>

      <key>WatchPaths</key>

      <array>

                <string>/Applications/</string>

                <string>/Applications/Utilities/</string>

      </array>

»