идентификатор потока в dispatch_get_main_queue () - PullRequest
1 голос
/ 07 марта 2011

Есть ли способ найти идентификатор потока, связанный с 'dispatch_get_main_queue ()'?

1 Ответ

3 голосов
/ 07 марта 2011

Любой блок, вычисленный в главной очереди, будет оцениваться в потоке, с которым он связан, поэтому вы можете получить идентификатор этого потока, спросив, в каком потоке оценивается такой блок:

#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.)

...