news 2026/9/9 20:49:42

观察者模式与事件中心

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
观察者模式与事件中心

观察者模式与事件中心

观察者模式和事件中心的关系

事件中心是观察者模式的中心化类型,观察者模式比事件中心更广义,不使用事件中心,两个类,类B监听类A的事件,也是观察者模式。

为什么要用事件中心?

我觉得在Unity里最大的原因还是脚本的生命周期不适合两两的观察者模式。

写一个不用事件中心的观察者模式,类B监听类A的事件,A和B都继承MonoBehaviour,马上会发现,如果A先于B创建(需要在脚本执行顺序里设置脚本优先级),那么也会先于B销毁,B试图取消监听时,A已经销毁。

这样还算能用,假如现在A也要监听B呢??(假设A是UI,B是管理器,A收到输入通知B处理,B处理完要通知A刷新显示)任意一方先创建,它都会找不到自己要监听的对象。

那么解决方法就是搞一个生命周期比所有MonoBehaviour都长的对象。

直接调用、监听委托、事件中心,如何选用?

看要调用的函数获取到的难度,或者说调用链长度。

  1. 要执行的函数就是此函数的参数的成员方法时,直接调用。
  2. 要执行的函数只在这个类的部分对象要执行,毫不犹豫使用观察者模式。比如背包数据类,有很多对象,只有玩家那个需要触发面板刷新,那背包数据类如果引用面板还要判断自己是不是玩家的背包?
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/6 16:14:25

Windows必备!免费高颜值桌面硬件监控软件、任务栏显示网速 CPU 软件

软件介绍 LiteMonitor 是一款基于 Windows 的现代化桌面系统监控工具。 支持横/竖屏/任务栏显示、主题切换、多语言、透明度显示、三色报警等,界面简洁且高度可配置 。 软件监测功能 分类监控指标💻 处理器(CPU)实时监测 CPU 使…

作者头像 李华
网站建设 2026/9/9 20:16:09

构建私有化大模型API:TensorRT镜像加速响应体验

构建私有化大模型API:TensorRT镜像加速响应体验 在企业级AI应用不断深入的今天,一个现实问题日益凸显:我们训练出的语言模型越来越强大,但一旦部署上线,用户却常常抱怨“回答太慢”“请求排队”“系统卡顿”。尤其是在…

作者头像 李华
网站建设 2026/9/6 16:04:11

快速掌握时序数据库 + TDengine 学习指南

1. 时序数据库核心认知 数据特征:高写入吞吐、时序有序性、保留期(TTL)、降采样与压缩、插值与对齐、窗口聚合。典型场景:物联网传感器、工业监控、日志/指标(Metrics)、金融行情、车联网。关键能力评估维度:写入性能…

作者头像 李华
网站建设 2026/9/3 8:41:14

数据挖掘在零售行业的实战案例

数据挖掘在零售行业的实战案例 关键词:数据挖掘、零售行业、客户分群、精准营销、库存优化、销售预测、实战案例 摘要:本文深入探讨数据挖掘技术在零售行业的核心应用场景,通过四个完整实战案例(客户分群、精准营销、库存优化、销售预测)解析关键技术路径。结合K-means聚类…

作者头像 李华
网站建设 2026/9/8 16:23:42

TensorRT与OpenTelemetry集成实现分布式追踪

TensorRT与OpenTelemetry集成实现分布式追踪 在当今的AI生产系统中,一个模型“跑得快”已经不再是唯一的追求。更关键的问题是:当整个推理链路出现延迟抖动或性能退化时,我们能否快速定位问题?是在预处理卡住了,还是GP…

作者头像 李华