很抱歉没有发布任何代码,因为我不知道这个逻辑。
我有一个while循环,一旦用户按下按钮就会运行,并在再次按下后停止。但我有条件需要检查一小段时间,直到条件得到满足(定时器不能满足我的需要)。所以我想执行那部分代码,直到它满足那个条件,之后我不需要代码的那一部分来检查那个条件,换句话说我希望程序停止执行那部分代码,这样我就可以保存我的执行时间浪费在那部分代码上。
这可能吗?或者这是我们在编程中无法实现的东西?
请注意,我不想实现计时器来完成这项工作!
编辑(工作我需要建立)
这是我正在检查的加速计更新...更新从用户按下按钮开始。我已设置条件来检查它是否超过某个值,如果超出,我想将计数存储到全局变量。然后我说,我不需要它重复检查那个条件。我不会停止加速数据一旦启动除非用户按下按钮停止?
答案 0 :(得分:2)
我不知道您的代码将看起来像什么......但是,这是您可以轻松完成的事情via Notifications(即注册“NSNotifications
”和当满足某些条件时,它会发布通知,然后任何其他侦听对象将运行选择器以“停止”)。或者你可以让你的其他线程监视一些条件via Key-Value-Observing,所以当一些BOOL条件(你的每个代码段正在观察)发生变化时,它们可以完成他们正在做的任何事情。
希望到目前为止这是有道理的,但总体思路是“是的,你所要求的不应该太难”。
答案 1 :(得分:0)
while(mainCondition)
{
if(!extraCondidion)
{
// Do extra bit of code only until extra condition is met
}
// Do normal code that runs before and after extra condition is met
}