BOOL getIvarValue(id instance, const char *name, size_t size, void *buffer)
{
Ivar thisIvar = class_getInstanceVariable([instance class], name);
ptrdiff_t offset = ivar_getOffset( thisIvar );
if (0 == offset) return NO;
void *ptr = FBridge(instance, id, void*) + offset;
memset(buffer, 0, size);
memcpy(buffer, ptr, size);
return YES;
}
- (int)seqNumber
{
__unsafe_unretained NSObject *td = nil;
getIvarValue(self, "_private", sizeof(td), &td);
int tid = 0;
getIvarValue(td, "seqNum", sizeof(tid), &tid);
return tid;
}
Objective-C 获取线程ID
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 1、关联返回类型(related result types)的方法 根据Cocoa的命名规则,满足下述规则的方法:...
- http://blog.csdn.net/totogo2010/article/details/7714960