我正在与代码“执行顺序”的概念搏斗,到目前为止我的研究还不够。我不确定我的措辞是否不正确,这个概念可能有更合适的术语。如果有人能阐明我下面的各种绊脚石,我将不胜感激。
我了解,如果您一个接一个地调用一个方法:
[self generateGrid1];
[self generateGrid2];
两种方法都运行,但 generateGrid1 不一定要等待 generateGrid2。但如果我需要它怎么办?假设 generateGrid1 进行一些复杂的计算(需要未知的时间)并填充 generateGrid2 用于其计算的数组?每次触发事件时都需要执行此操作,而不仅仅是一次初始化。
我需要一种按顺序调用方法的方法,但有一些方法等待其他方法。我研究过回调,但在我见过的所有示例中,这个概念总是与代表结合在一起。
我也不确定何时确定我不能合理地期望一行代码被及时解析以供使用。例如:
int myVar = [self complexFloatCalculation];
if (myVar <= 10.0f) {} else {}
我如何确定某些事情是否需要足够长的时间来实施检查“在我开始我的事情之前是否完成了其他事情”。只是反复试验?
或者,也许我将一个方法作为另一个方法的参数传递?它是否在执行方法之前等待对参数进行评估?
[self getNameForValue:[self getIntValue]];