代码会在继续之前等待 return 吗?
Will code wait for return before continuing?
我使用下面的代码设置数组中的元素和 return 数组,然后将 returned 数组传递给另一个方法进行更多更改,然后再次 return编辑。
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 到 return 吗?
我已将代码拆分为多个方法以使其更具可读性,因为我将添加一些其他逻辑以将不同的变量值传递给方法,只是想确保我的基本想法可行。
一般:是
你的问题很好奇,你似乎担心 checkTP1STD
在调用 checkTP2STD
之前会 return,而不是对 alloc
和 [= 的调用13=] 将在调用 checkTP1STD
.
之前 return
您是否真的打算在 checkTP1STD
中进行异步工作(例如,使用声明它们是异步的 GCD 或系统框架方法)。如果是这样,答案仍然是肯定的,但调用可能 return 在 checkTP1STD
安排的所有工作完成之前 - 异步编程的本质。
HTH
简而言之,是的。代码按顺序执行,除非有对新线程的显式调用,而您没有通过您提供的代码执行此操作。
我使用下面的代码设置数组中的元素和 return 数组,然后将 returned 数组传递给另一个方法进行更多更改,然后再次 return编辑。
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 到 return 吗?
我已将代码拆分为多个方法以使其更具可读性,因为我将添加一些其他逻辑以将不同的变量值传递给方法,只是想确保我的基本想法可行。
一般:是
你的问题很好奇,你似乎担心 checkTP1STD
在调用 checkTP2STD
之前会 return,而不是对 alloc
和 [= 的调用13=] 将在调用 checkTP1STD
.
您是否真的打算在 checkTP1STD
中进行异步工作(例如,使用声明它们是异步的 GCD 或系统框架方法)。如果是这样,答案仍然是肯定的,但调用可能 return 在 checkTP1STD
安排的所有工作完成之前 - 异步编程的本质。
HTH
简而言之,是的。代码按顺序执行,除非有对新线程的显式调用,而您没有通过您提供的代码执行此操作。