多线程 RunLoop

#import "ViewController.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

//////---------runloop的获取--------////////
//Cocoa中获取runloop的方法

//获取当前线程的runloop

NSRunLoop *currentRunloop = [NSRunLoop currentRunLoop];

//获取主线程runloop

NSRunLoop *mainrunloop = [NSRunLoop mainRunLoop];

NSLog(@"currentRunloop is:%@",currentRunloop);

NSLog(@"mainrunloop is:%@",mainrunloop);

//Core Foundition获取runloop的方法

//获取当前线程的runloop

CFRunLoopGetCurrent();

//获取主线程runloop

CFRunLoopGetMain();

////////-------runloop的mode------/////////

//创建nstimer

//    NSTimer *timer = [NSTimer timerWithTimeInterval:1 target:self selector:@selector(time) userInfo:nil repeats:YES];

//该种方式创建nstimer 将会以默认的模式添加到runloop NSDefaultRunLoopMode

NSTimer *scheduleTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(scheduleTime) userInfo:nil repeats:YES];

[[NSRunLoop currentRunLoop] addTimer:scheduleTimer forMode:NSRunLoopCommonModes];

//对UI控件拖动时 runloop的执行模式为UITrackingRunLoopMode

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(100, 100, 200, 500)];

scrollView.contentSize = CGSizeMake(500, 800);

scrollView.backgroundColor = [UIColor redColor];

[self.view addSubview:scrollView];

}

-(void)time

{

NSLog(@"------timer--------");

}

-(void)scheduleTime

{

NSLog(@"------stimer--------");

}

@end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 又来到了一个老生常谈的问题,应用层软件开发的程序员要不要了解和深入学习操作系统呢? 今天就这个问题开始,来谈谈操...
    tangsl阅读 9,596评论 0 23
  • 什么是RunLoop 从字面意思看 运行循环 跑圈 基本作用 保持程序的持续运行 处理App中的各种事件(比如触摸...
    沉梦昂志__阅读 2,649评论 0 0
  • 字面理解:跑圈,运行循环 基本作用 1.保持程序的持续运行2.处理App中的各种事件(触摸,监听,定时等等)3.节...
    Little_Dragon阅读 5,237评论 2 21
  • 多线程 - 4 RunLoop 常驻的主线程 RunLoop 事件响应 界面更新 //setNeedDispla...
    陈_振阅读 1,293评论 0 2
  • 请点击此处输入图片描述 ​ ▼ 你大可从一座城市的这个区搬到那个区,中间隔了几个地铁站,或者要花十几分钟坐一趟快速...
    冉阿树阅读 1,612评论 0 0