在继续之前代码会等待返回吗?

时间:2016-09-02 01:53:39

标签: ios objective-c xcode nsmutablearray

我使用下面的代码在数组中设置元素并返回数组,然后将返回的数组传递给另一个方法以进行更多更改,然后再返回。

NSMutableArray *returnArray = [[NSMutableArray alloc]init];

//call checkTP1
returnArray = [self checkTP1STD:addingTime :startToTP1 :TP1Result :nowDate :sevenHour :totalrest :returnArray];


//call check TP2
returnArray = [self checkTP2STD:addingTime :startToTP2 :TP2Result :nowDate :sevenHour :totalrest :returnArray :tp2Rest];

它目前正在按预期工作,我的问题是它是否会在执行checkTP2STD之前等待checkTP1STD返回?

我已经将代码拆分为多个方法以使其更具可读性,因为我将添加一些其他逻辑以将不同的变量值传递给方法,只是想确保我的基本想法可行。

2 个答案:

答案 0 :(得分:2)

一般来说:是的

您的问题很奇怪,您似乎担心checkTP1STD会在调用checkTP2STD之前返回,但不会调用allocinit之前的回复致电checkTP1STD

您是否真的打算在checkTP1STD中进行异步工作(例如,使用GCD或系统框架方法,表明它们是异步的)。如果是这样,答案仍然是肯定的,但调用可能会在checkTP1STD计划完成的所有工作完成之前返回 - 异步编程的本质。

HTH

答案 1 :(得分:1)

简而言之,是的。代码按顺序执行,除非显式调用新线程,而您没有通过您给出的代码执行此操作。