什么是CalNCService?为什么它在macOS Sierra中热运行?


34

自从升级到macOS Sierra以来,我偶尔会看到服务CalNCService运行热(即在100%CPU上)。因此,从名称开始,这似乎是一些Calendar Service。我尝试在“ Internet帐户首选项”中禁用“日历”,但这没有帮助。一个可以终止服务或重新启动计算机,但是问题仍然存在。通常,几个小时后,它就会恢复正常。

该守护程序在做什么?如何调试此问题?

更新:在calNCService启动时,我在日志控制台中找到以下内容:

warning: dynamic accessors failed to find @property implementation for 'serialNumber' for entity ABCDAddressBookSource while resolving selector 'serialNumber' on class 'ABCDAddressBookSource'.  Did you remember to declare it @dynamic or @synthesized in the @implementation ?

Update2:服务已连接到同步提醒。在“ Internet帐户”下禁用提醒同步可使服务恢复正常,再次启用该服务可使服务恢复至100%。这似乎与服务器无关。我有很多重复提醒,但我在fruux.com上的帐户首先遇到了这个问题。然后,我全部迁移到了iCloud,现在在那里也一样。

Update3:在10.12.1中仍然非常存在。也没有对Apple支持社区的答复。

Update4:另一个早晨,另一个calNCService。我还手动检查了有问题的提醒列表的导出的.ics。它看起来完全无害。大约40条提示,没有特别之处。正常运行时间后,calNCService

更新5:在10.12.2中仍然相同

更新6:在10.12.4中确认。重复:这似乎是一些内部管理任务。在升级后激活提醒时,问题触发的时间没有超过24小时。但是现在又回来了。与以前一样,只需在“ Internet帐户”下停用提醒同步即可将其停止

更新7:该错误似乎仍存在于MacOS 10.13 High Sierra中,但程度较轻。我一直在激活相应的提醒帐户。在13天的正常运行时间中,CalNCService的CPU时间为1:07:01(31h),太多了,但比“内核任务”(7:16:16)还少。

更新8:在10.13.4中仍然存在。我有两台装有MacOS的计算机,它们都发生在这两台计算机上。它似乎与通过某些API添加的提醒有关,例如当您通过Launchbar添加提醒时。calNCService的CPU时间似乎与我使用Launchbar或Siri输入提醒的时间有关。


1
该进程当前正在热运行,并且我都禁用了这两个功能(包括退出应用程序)->没有更改,仍在热运行。
托马斯

7
每当您在服务名称中看到“ NC”时,即表示该服务的“ 通知中心”部分。如果从通知中心删除日历和/或提醒,此问题会消失吗?过去,我在通知中心遇到的有关提醒的任何问题都可以通过删除所有“ 已完成”提醒(其中数千个)来解决。

3
@Phong哦。这是非常有用的信息。我正在尝试。尽管清除我的大约3600个已完成的提醒并没有解决此问题。我已经尝试过了。
汤玛斯(Thomas)

1
@Phong las,这无济于事。清空了整个通知中心(确实有“提醒”),但没有任何更改。
汤玛斯(Thomas)

2
突然,我自己的CalNCService开始加盖戳记,并尝试了我在网上发现的所有内容(即,禁用/重新启用日历和提醒,删除应用程序的访问权限,重新启动等),更多信息请访问:support.itsolver.net/hc/zh- gb / articles /…),在CalNCService恢复正常之前,我要做的最后一件事是从Notifications Center的Today选项卡中删除所有小部件(即仍将通知留在原地)。几分钟后,当我在CalNCService进程上进行转储时,我意识到它已经恢复正常。
user1559834 '16

Answers:


10

我遇到了同样的问题(风扇全速运转,CalNCService的CPU使用率是122%),并且已经两次造访Apple商店,并且第三次造访了我在Mac上进行了保修维修(都更换了两个风扇)……但是问题仍然存在。

我进入通知>编辑并禁用了所有通知,徽章,声音等,但iMessage,Slack和Outlook除外。

大约3分钟后,我注意到...。风扇是正常的。我会看一会儿,但似乎这个问题肯定与通知中的内容有关。我不会整天被ping通。


2
风扇更换很荒谬。那是什么样的苹果商店?显然这是一个软件问题。在活动监视器中可见。
托马斯

7

绝对有效,即使在重新启动之前:

后果自负!首先执行Time Machine备份。

  1. 打开系统偏好设置,Internet帐户,然后取消选中每个帐户的日历。
  2. 打开活动监视器,搜索calendar并退出日历进程。
  3. 打开查找器>转到文件夹(⇧⌘G),/Library/Caches然后将内容拖到垃圾箱。
  4. 打开查找器>转到文件夹,~/Library/Caches然后将内容拖到垃圾箱。
  5. 再次打开Finder>转到文件夹,~/Library/Caches然后将内容拖到垃圾箱。
  6. 打开Finder>前往文件夹~/Library/Containers选择com.apple.CalendarAgentcom.apple.CalendarAgent.CalNCServicecom.apple.CalendarFileHandlercom.apple.CalendarNotification.CalNCService并拖动到垃圾桶。
  7. 打开Finder>转到文件夹,~/Library/Calendars然后将文件夹的内容拖到垃圾箱。
  8. 重启你的电脑。
  9. 清空垃圾桶。
  10. 打开系统偏好设置,Internet帐户,然后为每个帐户勾选日历。
  11. 打开日历并等待日历同步。

受影响的操作系统:macOS Sierra 10.12
未确认的受影响的操作系统:Mac OS Yosemite 10.10和El Capitan 10.11

来自:https : //support.itsolver.net/hc/en-au/articles/214098206-macOS-Sierra-CalNCService-high-CPU-usage


万一有人怀疑,这种作品。但是,我认为打开日历应用程序,转到“首选项”>“帐户”,然后全部禁用它们,然后再启用它们,会更容易。它应该修复它。注意:删除〜/ Library / Calendars的步骤似乎是必需的。我猜这些文件已损坏或什么了
Cristiano Coelho

4

我有类似的问题。CalNCService消耗了大量的CPU。这是在我这边复制的方法:

我在同一Wi-Fi上使用带iOS 11.1.2的iPhone SE和带macOS High Sierra的MacBook。我的电话打了个电话,但我只是没有通过稍后提醒来接听。大约50分钟后,我注意到我的MacBook疯了。

解决方法是从我的手机中删除该呼叫提醒,然后MacBook立即冷却。


欢迎来到Ask Different,并感谢您的贡献!请注意,答案字段仅用于回答实际问题。虽然我认为您的贡献确实为讨论增加了价值,并且在一定程度上也与问题相关,但并没有回答。像这样的未来贡献的最佳选择是将它们发布为对问题的评论,而不是答案。要获得评论特权,请查看如何获得声望积分。谢谢,玩得开心!
Synoli

@Synoli现在的答案如何?至少与其他两个开头的答案相比I had same problem...
guness

没关系 我要指出的一件事是,OP专门询问了守护程序是什么,它做什么以及如何进行调试。他们实际上并没有询问如何解决它。但是话又说回来,其他受访者似乎也以与您相同的方式对其进行了解释。因此,很可能您的回答很好,而且我误会了!
Synoli

我有完全相同的情况。后来没有再通过提醒来接受它,并且在提示愚蠢的CalNCservices发疯之后。只需删除提醒即可解决它。
user982438 '18

谢谢!在10.14.5上为我提供了帮助
Nek

1

我还必须放弃首选项和相关文件。有一篇文章引导我完成了这一过程,而我的计算机几周以来第一次安静,触手可及。像这样的博客日期看起来早于Sierra:https//robert.accettura.com/blog/2012/08/19/how-to-stop-calendaragent-from-eating-cpu/


尽管此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能会失效。
grg

1

在我第一次在Mac(运行High Sierra)上使用Siri创建提醒后,我立即注意到了这个问题。删除此提醒会使CalNCService行为立即生效。

然后,我在没有Siri的情况下重新创建了相同的提醒,并且CalNCService没有开始行动。因此,就我而言,它似乎与在Mac上使用Siri创建提醒有关。


删除Siri创建的提醒也为我解决了这个问题。
Tomas Dermisek

1

我在日历应用中取消订阅了德国假日日历。立刻奏效了,歌迷们又安静了下来。我想这个日历应用程序中的订阅是个问题。希望能对某人有所帮助。


0

我也有这个问题。我尝试了上述建议,但没有成功。这终于对我有用:

  1. 打开系统偏好设置> Internet帐户
  2. 选择iCloud帐户,然后取消选中“日历和提醒”
  3. 选择您拥有的任何Google帐户并将其删除(点击左下角的“-”按钮)
  4. 重新启动电脑
  5. 打开系统偏好设置> Internet帐户并为iCloud重新启用日历和提醒
  6. 添加您的Google帐户

0

您可以只在Activity Monitor中重新启动CalendarAgent。如果没有帮助,请尝试删除缓存,然后再次重新启动CalendarAgent。在Terminal.app中运行:

rm -rf ~/Library/Caches/* && rm -rf ~/Library/Containers/com.apple.Calendar* && pkill CalendarAgent
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.