簡體   English   中英

沒有執行塊的NSPrivateQueueConcurrencyType

[英]NSPrivateQueueConcurrencyType without Perform Block

我用ConcurrencyType NSPrivateQueueConcurrencyType創建了一個NSManagedObjectContext。 我讀到我們應該僅對具有上下文的每個任務使用執行Block API。

我的問題是,如果不使用Perform Block API並直接使用上下文執行任務會怎樣?

簡短:不要。

更長:取決於NSManagedObjectContext的PrivateConcurrencyType版本的內部實現。 我想,如果您僅在一個線程中使用它,而不會將對象從該上下文傳遞到任何其他線程,則它可能會起作用。 或不。

  1. 不保證;
  2. 如果只打算從一個線程使用它,則需要使用Confinement並發類型。 實際上,如果以后需要一些並發性,我可能根本不會使用限制,但是在這里我們只是理論上的吧?
  3. 即使現在可以使用,將來也可能會中斷。

如果要從其他線程使用此上下文,則肯定會中斷。 一些數據可能會消失或隨機出現(對我來說是偶然的),某些數據可能崩潰,並且獨角獸可能會席卷您的辦公室。 所以就別

暫無
暫無

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

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