pxl*_*pxl 1 cocoa objective-c objective-c-blocks
我正在尝试拼凑并运行用户组合的任务列表.这些任务列表可以是数百或数千个项目.
据我所知,最简单和最明显的方法是构建一个数组,然后迭代它们:
NSArray *arrayOfTasks = .... init and fill with thousands of tasks
for (id *eachTask in arrayOfTasks)
{
if ( eachTask && [eachTask respondsToSelector:@selector(execute)] ) [eachTask execute];
}
Run Code Online (Sandbox Code Playgroud)
对于台式机,这可能没问题,但对于iphone或ipad,这可能是个问题.这是一个很好的方法,还是有更快的方法来完成同样的事情?
我之所以要问msg_send发生了多少开销,我也可以做一个直接的C实现.例如,我可以将链接列表组合在一起并使用块来处理下一个任务.我会从中获得任何东西,还是比它的价值更麻烦?