有没有办法找到与'dispatch_get_main_queue()'相关联的线程ID?
答案 0 :(得分:3)
在主队列上计算的任何块都将在与其关联的线程上进行评估,因此您可以通过询问此块正在评估的线程来获取该线程的ID:
#import <mach/mach_init.h>
__block mach_port_t mainThreadID;
dispatch_async(dispatch_get_main_queue(), ^{
mainThreadID = mach_thread_self();
});
(A mach_port_t
实际上只是一个无符号的int。)