Objective c 主线程上必须有Swizzling吗?

Objective c 主线程上必须有Swizzling吗?,objective-c,multithreading,Objective C,Multithreading,我在主线程上成功地切换了imageNamed:方法 这是我的代码,它是js ctypes: 当我从另一个线程做这件事时,我似乎崩溃了。我不确定这是否是一个打字错误,我仍在挖掘,但似乎找不到任何错误。所以我想知道使用方法_setImplementation进行swizziling是否不是线程安全的 相同的线程安全性是否适用于使用方法\u交换实现的Swizzling?我认为您的代码中存在问题,但我可以向您推荐JRSwizzle库和一个演示如何使用:啊,谢谢,我会继续查找,我暂时在生产中从主线程执行S

我在主线程上成功地切换了
imageNamed:
方法

这是我的代码,它是js ctypes:

当我从另一个线程做这件事时,我似乎崩溃了。我不确定这是否是一个打字错误,我仍在挖掘,但似乎找不到任何错误。所以我想知道使用
方法_setImplementation
进行swizziling是否不是线程安全的


相同的线程安全性是否适用于使用
方法\u交换实现的Swizzling

我认为您的代码中存在问题,但我可以向您推荐JRSwizzle库和一个演示如何使用:

啊,谢谢,我会继续查找,我暂时在生产中从主线程执行Swizzling,直到我能弄明白为什么它不能从主线程以外的线程工作。