簡體   English   中英

核心數據並發

[英]Concurrency in Core Data

我正在使用核心數據來獲取/保存數據。 在我的應用程序中,我使用90%的核心數據和10%的Web服務API。 目前,我正在優化。 之前,我嘗試使用NSOperationQueue和GCD操作。 我發現-performBlock:和-performBlockAndWait:解決了線程操作和異步(后台)進程。 這更適合我的代碼。 我以concurrencytype作為NSPrivateQueueConcurrencyType啟動了managedobjectContext。

**在整個應用程序中單獨使用NSPrivateQueueConcurrencyType是否很好? **

NSManagedObjectContext *private = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];

可以在NSPrivateQueueConcurrencyType地方使用NSPrivateQueueConcurrencyType 可能不方便,但這取決於您。

NSMainQueueConcurrencyType的優點是,如果您的代碼在主隊列上運行,則不需要performBlockperformBlockAndWait 這些方法只會在主隊列上運行該塊,但是當您已經在主隊列上時,那沒有什么區別。 這樣可以簡化與UI相關的代碼。 是否使用它取決於您的調用,具體取決於您在代碼中發現方便的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM