美文网首页
子线程发出的通知,主线程如何接收处理

子线程发出的通知,主线程如何接收处理

作者: AlwaysBlue | 来源:发表于2022-06-21 15:41 被阅读0次

1.关键点是在主线程的runloop中加入一个machport
2.在子线程中,1)将要发出的通知加入一个数组中,然后通过主线程中的machport发出消息
2)在主线程中接收port来的消息,但其内部其实是访问主线程生成的数组(该数组在子线程中也能进行操作,怪不得要加锁)即可。
3.注意在主线程中处理通知的要区分出来当前线程(通知的监听者还能处理不同线程的)
4.NSMachPort是线程间通信的一种方式
注:
- (void)handlePortMessage:(NSPortMessage *)message;

准备工作 接收通知的函数 主线程接收port来的消息

参考链接:https://www.bbsmax.com/A/x9J2DXQed6/
https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/Notifications/Articles/Threading.html#//apple_ref/doc/uid/20001289-CEGJFDFG

相关文章

  • 子线程发出的通知,主线程如何接收处理

    1.关键点是在主线程的runloop中加入一个machport2.在子线程中,1)将要发出的通知加入一个数组中,然...

  • iOS NSNotificationCenter通知中心之多线程

    1、主线程监听,子线程发通知 在主线程监听,子线程发通知,会在子线程接收到通知。 2、子线程监听,子线程发通知 子...

  • Android Handler 笔记

    Handler 发送(延时)/接收/处理消息 1.UI线程更新 2.主/子线程通信 主要的几个类...

  • iOS通知和线程

    打印结果:当在主线程发送通知时: 当在子线程发送通知时: 结论:通知在哪个线程发送,接收就在那个线程。

  • 线程终止

    通知终止 场景:在主线程中启动子线程,如何让主线程通知到子线程,从而让子线程终止

  • 线程与通知的那些事儿

    主线程发送,主线程接收 打印日志: 子线程发送,子线程接收 打印日志: 响应发生在都在发送时的线程 主线程发送,子...

  • 在A线程中添加监听通知,在B线程中发出通知,此时能否监听到通知

    默认情况下,发送通知的线程和接收处理通知的线程为同一个线程在iOS4.0之后,apple提供一个带有block回调...

  • 三:线程中断

    线程中断并不会让线程立即退出,而是给线程发送一个通知,告诉目标线程,现在希望他退出,至于线程接到通知后如何处理,完...

  • 深入理解线程通信

    前言 开发中不免会遇到需要所有子线程执行完毕通知主线程处理某些逻辑的场景。 或者是线程 A 在执行到某个条件通知线...

  • iOS中关于NotificationCenter通知线程问题

    打印结果:1、子线程注册 子线程发送 2、主线程注册 子线程发送 结论:不管你在哪个线程注册通知,发送通知在哪个线...

网友评论

      本文标题:子线程发出的通知,主线程如何接收处理

      本文链接:https://www.haomeiwen.com/subject/lmasvrtx.html