2
HealthKitからデータを読み取る関数があります。 この関数は複数のスレッド/場所から呼び出すことができますが、並列呼び出しではなく、一度に1つずつ呼び出しを実行します。iOS:複数のスレッド/場所から特定の関数を呼び出すことができますが、各呼び出しをキュー内で実行する必要があります。
GCDやOperationQueuesを使用して、iOS向けのSwiftでこれを実現する簡単な方法はありますか?
HealthKitからデータを読み取る関数があります。 この関数は複数のスレッド/場所から呼び出すことができますが、並列呼び出しではなく、一度に1つずつ呼び出しを実行します。iOS:複数のスレッド/場所から特定の関数を呼び出すことができますが、各呼び出しをキュー内で実行する必要があります。
GCDやOperationQueuesを使用して、iOS向けのSwiftでこれを実現する簡単な方法はありますか?
はい、シリアルDispatchQueueは問題を解決するはずです。それぞれの機能にアクセスできるスコープ内に作成することを確認してください。
let serialQueue = DispatchQueue(label: "serialQueue")
serialQueue.async{ //call this whenever you need to add a new work item to your queue
//call function here
}