#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
//1.主线程对应的runloop对象
NSRunLoop *mainRunloop = [NSRunLoop mainRunLoop];
//2.获得当前方法所在线程对应的runloop
NSRunLoop *currentRunloop = [NSRunLoop currentRunLoop];
NSLog(@"%p---%p",mainRunloop,currentRunloop);
//a.主线程对应的runloop对象
CFRunLoopRef cfmainRunloop = CFRunLoopGetMain();
//b.获得当前方法所在线程对应的runloop
CFRunLoopRef cfCurrentRunloop = CFRunLoopGetCurrent();
NSLog(@"%p---%p",cfmainRunloop,cfCurrentRunloop);
CFRunLoopRef runloop = mainRunloop.getCFRunLoop;
NSLog(@"%p",runloop);
//开启一条子线程
NSThread *thread = [[NSThread alloc]initWithTarget:self selector:@selector(test) object:nil];
[thread start];
}
-(void)test
{
//怎么创建子线程的runloop
[NSRunLoop currentRunLoop];//这个方法时懒加载的
NSLog(@"--test--%@---%p",[NSThread currentThread],[NSRunLoop currentRunLoop]);
}
@end