詞彙表/你會看到的程序

IMDPersistenceAgent

又稱:「訊息」資料庫

簡短回答

IMDPersistenceAgent是負責讀寫「訊息」資料庫的macOS程序,這個資料庫是Mac上保存你iMessage和簡訊記錄的檔案。「訊息」、通知、Spotlight和Siri都不會自己打開資料庫,而是向它要對話內容。

它以你自己的使用者帳號執行,只要有東西需要你的訊息,macOS就會啟動它:打開「訊息」App、收到新訊息,或進行包含對話的搜尋。它管理的記錄保存在你個人專屬檔案夾的~/Library/Messages中。

大部分時間它完全不用CPU。收到訊息時它會忙一下,需要一次處理全部記錄時則會忙上久得多。

IMDPersistenceAgent為什麼使用這麼多CPU

通常的原因是「iCloud中的訊息」正在追上進度。在新的Mac上登入、開啟這項功能,或長時間離線後重新連線時,多年來的對話和附件都會下載並寫入資料庫,而負責寫入的就是IMDPersistenceAgent。記錄很多時,可能要花上幾個小時。

macOS更新後Spotlight為你的對話製作索引,效果也一樣;資料庫變得非常大或已經損毀,導致每個請求都比正常情況花更久時,也是如此。

該怎麼處理

如果你剛設定好Mac或剛登入iCloud,就讓它接著電源,等它完成。要確認是否正在同步,請打開「訊息」→「設定」→「iMessage」;進行中的同步會顯示在那裡,「立即同步」可以重新開始卡住的同步。

如果超過一天還是居高不下,請結束「訊息」並重新開機。如果還是沒有改善,就在同一個設定面板中關閉再重新開啟「iCloud中的訊息」,讓Mac重新下載它的那一份資料。除非你的訊息已安全保存在iCloud或備份中,否則不要手動刪除~/Library/Messages中的檔案。

大家常問的問題

Mac上的IMDPersistenceAgent是什麼?

管理「訊息」記錄的macOS程序。所有顯示或搜尋你對話的App和系統功能,都是透過它取得對話內容。

IMDPersistenceAgent為什麼CPU用量很高?

通常是因為「iCloud中的訊息」正在同步大量記錄,或是更新後Spotlight正在為你的對話製作索引。這兩種情況都會自行結束。「訊息」資料庫非常大或已經損毀時,它可能會忙得更久。

結束IMDPersistenceAgent安全嗎?

安全。強制結束它不會遺失任何東西,下次有東西需要你的訊息時,macOS會再次啟動它。如果當時正在同步,它會從中斷的地方繼續。

相關詞條

想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。