Поскольку я обновился до Mountain Lion с Lion, я вижу, что процесс CalendarAgent занимает много процессорного места на моем MacBook Pro конца 2008 года. Чтобы исправить это (как было предложено в результате Google), я попытался удалить все учетные записи онлайн-календаря, а затем снова добавить их. Какое-то время это работало, но теперь проблема вернулась (возможно, из-за того, что я либо удалил некоторые календари iCloud, либо добавил дополнительного делегата календаря Google). Я действительно не хочу удалять все свои учетные записи календаря каждый раз, когда я добавляю или удаляю один календарь, поэтому может ли кто-нибудь указать мне на основную причину проблемы?
На случай, если будет полезно, сюда вставлен график вызовов из процесса .
ОБНОВЛЕНИЕ: я удалил одного из делегатов из одной из моих учетных записей календаря Google, и это предотвратило возникновение этой проблемы. Однако на самом деле это не решение, поскольку теперь я не могу получить доступ к этому календарю.
Я все еще ищу твердый ответ.
Тем временем у меня есть следующий скрипт, работающий в редакторе AppleScript. Этот скрипт ищет CalendarAgent
каждые 15 секунд и убивает процесс.
Это делает синхронизацию календаря непригодной для использования, но, по крайней мере, я снова могу использовать свой Mac. Я позволю этому работать, пока не найду постоянное решение.
Сценарий:
repeat
set app_name to "Finder"
do shell script "killall -9 CalendarAgent"
delay 15
end repeat
Возможно, придется убить и перестроить БД календаря:
Отключите службу календаря из своей учетной записи в Системных настройках → Учетные записи Интернета.
Удалите файлы настроек/базы данных для календаря:
rm -r ~/Library/Calendars/ ~/Library/Preferences/com.apple.iCal.plist
Повторно включите службу.
Источник: http://robert.accettura.com/blog/2012/08/19/how-to-stop-calendaragent-from-eating-cpu/
Использование делегатов Google определенно вызвало у меня проблему с высокой загрузкой процессора.
Простое решение:
Внесение этого изменения устранило проблему высокой загрузки ЦП, не прибегая к подходу kill-the-CalendarAgent.
IconDaemon
IconDaemon