Обычно использование Беркли снабжает API сокетом, к sendto()
одна или несколько дейтаграмм к известному IP-адрес широковещательного класса .
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.
См. pthread_getname_np
.
К сожалению, имя NSThread в настоящее время не передается в него. Имя NSThread - это просто ivar, поэтому не будет возможности чтобы добраться до него, кроме как с помощью метода. Вы всегда можете создать функцию C, которая создает пул автозапуска и получает имя. Тогда ваш код C ++ не нужно компилировать как ObjC ++.
pthread_getname_np
, вероятно, является в любом случае немного более полезным, чем имя NSThread прямо сейчас. gdb и Instruments не знают об имени NSThread, только имя уровня pthread.