http://newosxbook.com/index.php
ios 上 gettid怎么实现?
mac get thread id
http://stackoverflow.com/questions/1540603/mac-iphone-is-there-a-way-to-get-a-thread-identifier-without-using-objective-c
I found a one way that is enough to get some kind of unique identifier for trace output.
pthread_mach_thread_np
can be used to get a thread identifier, an unsigned int on iPhone.
mach_port_t tid = pthread_mach_thread_np(pthread_self());
Apparently this is a same thread id that is used in NSLog output.
See pthread_getname_np
.
Unfortunately NSThread's name is not currently pushed down to that. The NSThread name is just an ivar, so there will be no way to get at it except through the method. You could always make a C function that makes the autorelease pool and gets the name. Your C++ code then doesn't have to be compiled as ObjC++.
pthread_getname_np
is probably a bit more useful than NSThread's name right now anyway. gdb and Instruments don't know about NSThread's name, only the pthread level name.