2
両者はカウンタを使用し、カウンタのインクリメントとデクリメントを保護するためにロックを使用し、カウンタがゼロ未満の場合、スレッドは待機します。彼らのapiを除いて同じものだと私は思う。iOSのNSConditionとdispatch_semaphoreの違いは何ですか?
両者はカウンタを使用し、カウンタのインクリメントとデクリメントを保護するためにロックを使用し、カウンタがゼロ未満の場合、スレッドは待機します。彼らのapiを除いて同じものだと私は思う。iOSのNSConditionとdispatch_semaphoreの違いは何ですか?
AppleはDispatchSemaphore
signal()
方法に関する彼らのドキュメントに書いている:
この機能は現在dispatch_semaphore_wait(で待機しているスレッドウェイク:を:)。
1)
broadcast()
:はそれを待っているすべてのスレッドを目覚め、状態を通知します
は
DispatchSemaphore
とは異なり、NSCondition
は2種類の方法があります。
2)signal()
それを待っているスレッドを1つ目覚め、状態を通知します。