gpt4 book ai didi

iphone - 我如何使用 NSConditionLock?或 NSCondition

转载 作者:IT王子 更新时间:2023-10-29 07:48:09 25 4
gpt4 key购买 nike

我试图让一个函数等待另一个函数,我想使用 NSCondionLock 来完成这个。我不是在寻求帮助,而是真的希望有人能给我一个像样的教程或示例来解释 NSConditionLock,或者可能建议一个更好的方法。

最佳答案

编辑:正如@Bonshington 评论的那样,这个答案指的是NSCondition(与NSConditionLock 相对):

- (void) method1 {

[myCondition lock];
while (!someCheckIsTrue)
[myCondition wait];


// Do something.


[myCondition unlock];
}

- (void) method2 {

[myCondition lock];


// Do something.


someCheckIsTrue = YES;
[myCondition signal];
[myCondition unlock];
}

someCheckIsTrue 可以是任何东西,它可以是一个简单的 BOOL 变量,甚至可以是 [myArray count] == 0 && color == kColorRed,它不是没关系。唯一重要的是,在一种方法中,在您拥有锁的情况下检查条件,而在另一种方法中,您进行更改以使条件变为真也在拥有锁的情况下 .神奇的是 waitsignal 部分:wait 实际上解锁锁并在其他线程调用 signal .

关于iphone - 我如何使用 NSConditionLock?或 NSCondition,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6704072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com