iOS-NSNotificationCenter通知中心是同步操作还是异步操作

前言

最近有个小伙伴到喜马拉雅去面试,面试官问他一个问题就是“通知中心是同步操作还是异步操作?”,小伙伴回答成异步了,然后就是回家等消息,然后就是没有然后了。。。

我先举几个小的列子给大家瞅瞅:

  • (void)sentValueBtnClick:(UIButton *)button{
    NSLog(@"发送通知");
    NSDictionary *dict = @{@"myValue":@"ZFJ通知传值"};
    [[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:@"KPassValue" object:nil userInfo:dict]];
    }

  • (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    _textField.layer.borderColor = [UIColor redColor].CGColor;
    _textField.layer.borderWidth = 1.0;

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(passValue:) name:@"KPassValue" object:nil];
    }

  • (void)passValue:(NSNotification *)text{
    NSString *valueStr = text.userInfo[@"myValue"];
    NSLog(@"收到值:%@",valueStr);
    sleep(3);
    self.textField.text = valueStr;
    NSLog(@"通知赋值完毕");

https://blog.csdn.net/u014220518/article/details/70598063

你可能感兴趣的:(iOS-NSNotificationCenter通知中心是同步操作还是异步操作)