Ios 如何为自己的代码配置主线程检查器?

Ios 如何为自己的代码配置主线程检查器?,ios,xcode,macos,Ios,Xcode,Macos,我有一个类方法,我希望总是在主线程中执行 是否有一种方法可以配置XCode主线程检查器,以便在后台线程上调用该方法时发出“紫色警告”(就像它对UI相关方法所做的那样)?有一些类似于MTC\u SUPPRESSION\u FILE的方法,允许您提供要从检查器中排除的类、方法和选择器的列表。与你所寻找的相反。我(快速)检查了libMainThreadChecker.dylib,但找不到更多 然后我得到了一位苹果工程师的回复——没有记录在案的方法。它可能意味着任何事情——没有办法或有办法,但它没有被记

我有一个类方法,我希望总是在主线程中执行

是否有一种方法可以配置XCode主线程检查器,以便在后台线程上调用该方法时发出“紫色警告”(就像它对UI相关方法所做的那样)?

有一些类似于
MTC\u SUPPRESSION\u FILE
的方法,允许您提供要从检查器中排除的类、方法和选择器的列表。与你所寻找的相反。我(快速)检查了
libMainThreadChecker.dylib,但找不到更多


然后我得到了一位苹果工程师的回复——没有记录在案的方法。它可能意味着任何事情——没有办法或有办法,但它没有被记录1。他建议用

DispatchPredition(条件:.onQueue(.main))
。。。在你的方法的开始


1如果有人想深入研究,可以在
/Applications/Xcode beta.app/Contents/Developer/usr/lib/libmainthreadschecker.dylib中找到该库。

有一些,但它们没有提供您想要的。恐怕不可能。只需添加
assert(Thread.isMainThread,“您应该在主线程上运行它!”)
(Swift)作为您方法的第一行,您就完成了。谢谢-我担心我不得不回过头来…我收到了苹果工程师的回复-没有记录在案的方法。它可以意味着任何事情,没有办法,有办法。。。他建议使用
dispatchpredition(条件:.onQueue(.main))
而不是assert。干得好!如果你把它写下来作为回答,我将欣然接受:-)