美文网首页
5种常见的消息传递机制及其区别

5种常见的消息传递机制及其区别

作者: 是超超呀 | 来源:发表于2021-04-25 10:42 被阅读0次

常见的消息传递方法有以下5种

第一种:KVO对象属性改变时的通知机制,当对象的某个属性发生变化,进行某项操作的时候,就可以使用KVO的消息传递。使用KVO的前提:消息的观察者需要知道谁是消息的发送者;观察者需要知道发送者的生命周期,因为KVO不会对self进行强引用,如果观察者的生命周期结束了,self被释放,所以添加的监听需要被移除。

第二种:通知机制广播消息,要在两个不相关的模块进行消息传递时,可以使用通知,不需要知道发送者是哪个,同时通知可以发送任何的消息,但是通知的消息传递是单向的,我们不能回复一个通知。

第三种:Target-Action:是UI事件的消息传递方式,target-Action 在消息的发送者和接收者之间建立了一个关系。消息的接收者和发送者互不知道对方。如果 target 是 nil,action 会在响应链中被传递下去,直到找到一个响应它的对象。在 iOS 中,每个控件甚至可以和多个 target-action 关联。但是发送的消息不能携带自定义的信息。

第四种:Block 通常可以完全替代 delegation 消息传递机制的角色,不过使用block要注意避免出现循环引用。

第五种:delegate 发送者需要知道接受者是哪个,代理可以自定义任何的方法,按照自己的需求传递信息,可以用方法参数来传递消息内容,delegate 可以通过返回值的形式来给发送者作出回应。

ObjC 中国 - 消息传递机制

相关文章

  • 5种常见的消息传递机制及其区别

    常见的消息传递方法有以下5种 第一种:KVO对象属性改变时的通知机制,当对象的某个属性发生变化,进行某项操作的时候...

  • android消息机制

    Android消息传递机制 标签(空格分隔): android 概述: 消息机制的常见应用场景:在子线程中进行耗时...

  • iOS消息转发机制

    消息转发机制: 消息转发机制是相对于消息传递机制而言的。 1、消息(传递)机制 RunTime简称运行时。就是系统...

  • 消息传递机制

  • 消息传递机制

  • 浅析Handler消息传递机制

    Android的异步消息处理机制:Handler消息传递机制。 1、Message Message是在线程之间传递...

  • Runtime

    相关简单介绍 消息机制消息传递机制消息转发机制-动态添加方法消息转发机制-快速转发消息转发机制-慢速转发消息转发机...

  • Android Handler消息传递机制

    一、Handler消息传递机制简介 1.什么是Handler Handler是Android的一套消息传递机制。在...

  • 几种消息传递机制的比较

    本文主要借鉴了 objc上的文章 消息传递机制 iOS中,消息传递机制主要有 5种 KVO Notificatio...

  • Android Handler笔记

    消息机制模型 Message:需要传递的消息,可以传递数据; MessageQueue:消息队列,并不是队列,实际...

网友评论

      本文标题:5种常见的消息传递机制及其区别

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