gpt4 book ai didi

iphone - 具有多个参数的 performSelectorOnMainThread

转载 作者:可可西里 更新时间:2023-11-01 03:37:21 31 4
gpt4 key购买 nike

我正在尝试在主线程上执行此操作:

[curItem.mButton setBackgroundImage:newArt forState:UIControlStateNormal];

所以我这样做...

cWrapperObject* obj = [cWrapperObject alloc];
[obj setupParams :curItem.mButton :newArt];
[obj performSelectorOnMainThread:@selector(setImageForButton) withObject:nil waitUntilDone:YES];

我觉得这很糟糕,有人对我如何以不同的方式处理这个问题有什么建议吗?

最佳答案

另一种选择是 GCD。您可以调用主队列上的一个 block ,该 block 在运行循环运行时串行运行。 block 不限于一个对象,如 performSelectorOnMainThread。

dispatch_async(dispatch_get_main_queue(), ^{
// code here
});

我在这里写了一个更全面的 performSelectorXXX 和 GCD 比较,并附有示例:

GCD, Threads, Program Flow and UI Updating

此外,这是另一篇相关的 SO 帖子:

GCD to perform task in main thread

关于iphone - 具有多个参数的 performSelectorOnMainThread,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7693203/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com