2017-01-02 22 views
0

在GitHub上,CareKit的文檔包含一個名爲「Sample」的示例應用程序。在樣品中,文件QueryActivityEventsOperation.swift包括具有以下注釋一行代碼:在Apple的CareKit中是否可以將OCKCarePlanStore查詢從主隊列中運行?

// <rdar://problem/25528295> [CK] OCKCarePlanStore query methods crash if not called on the main thread 

我一直在尋找,但我不能找不到任何相關文檔此雷達問題。有誰知道如果OCKCarePlanStore查詢方法仍然限於在主隊列中運行?

回答

0

OCKCarePlanStore查詢可以流掉任何隊列。如GitHub所示,該線程僅被檢查兩次:在創建商店時以及在單元測試之一中。

這意味着僅限於主線程的唯一呼叫initWithPersistenceDirectoryURL:。任何其他方法都可以在任何線程上調用。

+0

謝謝!我會看看我是否可以在GitHub上提出過時的評論。顯然,示例代碼已過時。 QueryActivityEventsOperation的實例接受一個時間範圍和一個activityIdentifier作爲輸入。運行時,操作(1)檢索活動,然後(2)檢索時間範圍內該活動的所有事件。任務(1)和(2)都被強制在主隊列上運行,這似乎不正確。 –

+0

@BillNattaner這肯定是過時 - 我的親自測試了,我做了一個不同的樣本項目,該項目獲取的兩項活動的事件在同一時間。其中只有一個在主線程中,但它仍然正常工作,沒有錯誤信息或任何東西。我會在GitHub上檢查你的問題。 – tktsubota

相關問題