Vejo que depois de instalar um software que vem com documentação no formato de documento de ajuda do OS X, o helpd o processo usa 100% da CPU por até 5 minutos ou mais. Também vejo isso quando você instala o OS X pela primeira vez.

Presumo que isso aconteça por causa da indexação da nova documentação que foi adicionada pelo novo aplicativo.

Existe uma maneira de tornar essa indexação um pouco menos intensiva em recursos?

Talvez desacelerar? Quando isso acontece, meu sistema simplesmente pára até terminar.

Alguém mais teve o mesmo problema?

Comentários

  • Isso não parece normal, mas o que é um aplicativo de exemplo que exibiu a lentidão da indexação. Qual versão do Mac OS X você está usando? Que tipo de Mac você está usando?

Resposta

Do thread https://discussions.apple.com/thread/3209466

«2 de janeiro de 2012 11h45 em resposta ao zeBob

O Helpd atualiza todos os os arquivos de ajuda do aplicativo no seu Mac.

No entanto, eu odeio ter que ajudar a iniciar repetidamente e aparentemente de forma aleatória, ocupando 1 GB de RAM e usando tanto tempo de CPU que os ventiladores fazem barulho no meu MacBook Pró. Eu prefiro que meu MacBook Pro fique quieto.

Após investigação, descobri que helpd é controlado por um plist System LaunchAgent que é executado na inicialização:

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

Ao examinar o conteúdo deste plist usando XCode, o que você descobre é que:

  1. helpd é executado quando é carregado pelo sistema na inicialização ou login

  2. helpd é executado todos os domingos às 2h30

  3. o agente de inicialização observa o seguinte pastas e executa helpd sempre que as pastas mudam:

    / Applications /

    /Applications/Utilities/

O maior problema é as pastas monitoradas. Eles mudam sempre que você os abre (ou seja, a data de modificação muda quando são abertos). Eles mudam quando você instala um novo aplicativo. Muitos aplicativos alteram o conteúdo da pasta de aplicativos quando executados. etc. etc.

(Lingon é um agente de inicialização simplificado e editor de daemon de inicialização. Lingon 3, a propósito, não pode gerenciar nada além dos agentes de inicialização e daemons de inicialização do seu próprio usuário. É limitado por As novas regras da App Store da Apple. Lingon 2 pode abrir agetns de inicialização de sistema e iniciar daemons. Mas está faltando muitos dos campos plist revelados pelo uso de XCode. Por exemplo, ele mostrará a pasta / Applications / watch. Mas há DUAS pastas monitoradas – a segunda é / Applications / Utilities / Assim, o Lingon pode causar problemas ao modificar os agentes de inicialização do sistema e daemon plists ao perder vários campos. Eu não recomendo o Lingon além de criar seus próprios agentes de inicialização e daemons do usuário – com o Lingon 2 sendo uma versão muito mais eficiente)

A solução mais fácil é usar o Xcode ou outro editor plist para modificar o com.apple.helpd.plist para alterar as pastas monitoradas.

Mudei de / Aplicativos / para / Aplicativos / Utilitários / e saí da segunda pasta monitorada / Aplicativos / Utilitários /

Como eu raramente abro / Aplicativos / Utilitários / isso faz com que o helpd seja iniciado com muito menos frequência.

Você também pode simplesmente eliminar as pastas monitoradas. Isso mantém o helpd em execução aos domingos às 2h30 ou na inicialização ou login.

Quando os usuários se livram de muitos aplicativos mais antigos, eles veem o helpd ser iniciado com menos frequência, pois esses aplicativos mais antigos podem ser os que modificam o / Aplicativos / pasta.

Se você tem apenas aplicativos mais novos ou poucos aplicativos, não se depara com o problema do helpd com tanta frequência ou de todo. É por isso que poucas pessoas reclamam do helpd. Somente os usuários que o têm vários aplicativos (especialmente os mais antigos ou não comprados na App Store) enfrentam esse problema.

Aqui está o conteúdo do 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> 

»

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *