NSConditionLock
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSLocking -
NSObjectProtocol -
Печатаемый -
NSLocking -
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в iOS 2.0 и позже.
NSConditionLock класс определяет объекты, блокировки которых могут быть связаны с определенными, определяемыми пользователем условиями. Используя NSConditionLock объект, можно гарантировать, что поток может получить блокировку, только если соблюдено определенное условие. Как только это получило блокировку и выполнило критический раздел кода, поток может оставить блокировку и установить связанное условие к чему-то новому. Сами условия произвольны: Вы определяете их по мере необходимости для Вашего приложения.
-
init (условие:) - initWithCondition:Определяемый инициализаторИнициализирует недавно выделенный
NSConditionLockвозразите и устанавливает его условие.Объявление
Swift
init(conditioncondition: Int)Objective C
- (instancetype)initWithCondition:(NSInteger)conditionПараметры
conditionОпределяемое пользователем условие для блокировки. Значение
conditionявляется определяемым пользователем; см. описание класса для получения дополнительной информации.Возвращаемое значение
Инициализированный объект блокирования условия; может отличаться, чем исходный получатель.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
-
conditionСвойствоУсловие связалось с получателем. (только для чтения)
Обсуждение
Если никакое условие не было установлено, возвраты 0.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
-
Попытки получить блокировку перед указанным моментом своевременно.
Объявление
Swift
func lockBeforeDate(_limit: NSDate) -> BoolObjective C
- (BOOL)lockBeforeDate:(NSDate *)limitПараметры
limitДата, которой блокировка должна быть получена или попытка, испытает таймаут.
Возвращаемое значение
YEStrueесли блокировка получена в ограничении по времени,NOfalseиначе.Обсуждение
Условие, связанное с получателем, не принято во внимание в этой работе. Этот метод блокирует выполнение потока, пока получатель не получает блокировку или
limitдостигнут.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Попытки получить блокировку.
Объявление
Swift
func lockWhenCondition(_condition: Int)Objective C
- (void)lockWhenCondition:(NSInteger)conditionПараметры
conditionУсловие соответствовать на.
Обсуждение
Условие получателя должно быть равно
conditionпрежде чем работа блокировки успешно выполнится. Этот метод блокирует выполнение потока, пока не может быть получена блокировка.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
-
Попытки получить блокировку перед указанным моментом своевременно.
Объявление
Параметры
conditionУсловие соответствовать на.
limitДата, которой блокировка должна быть получена или попытка, испытает таймаут.
Возвращаемое значение
YEStrueесли блокировка получена в ограничении по времени,NOfalseиначе.Обсуждение
Условие получателя должно быть равно
conditionпрежде чем работа блокировки успешно выполнится. Этот метод блокирует выполнение потока, пока блокировка не может быть получена илиlimitдостигнут.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Попытки получить блокировку вне зависимости от условия получателя.
Объявление
Swift
func tryLock() -> BoolObjective C
- (BOOL)tryLockВозвращаемое значение
YEStrueесли блокировка могла бы быть получена,NOfalseиначе.Обсуждение
Этот метод сразу возвращается.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Попытки получить блокировку, если условие получателя равно указанному условию.
Объявление
Swift
func tryLockWhenCondition(_condition: Int) -> BoolObjective C
- (BOOL)tryLockWhenCondition:(NSInteger)conditionВозвращаемое значение
YEStrueесли блокировка могла бы быть получена,NOfalseиначе.Обсуждение
Как часть его реализации, этот метод вызывает
lockWhenCondition:beforeDate:. Этот метод сразу возвращается.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Оставляет блокировку и устанавливает условие получателя.
Объявление
Swift
func unlockWithCondition(_condition: Int)Objective C
- (void)unlockWithCondition:(NSInteger)conditionПараметры
conditionОпределяемое пользователем условие для блокировки. Значение
conditionявляется определяемым пользователем; см. описание класса для получения дополнительной информации.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
См. также
-
nameСвойствоИмя связалось с получателем.
Обсуждение
Можно использовать строку имени для идентификации блокировки условия в коде. Какао также использует это имя в качестве части любых описаний ошибок, включающих получатель.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в iOS 2.0 и позже.
