当前位置: 首页 > wzjs >正文

网站 购买2021年中国十大电商平台排名

网站 购买,2021年中国十大电商平台排名,小牛在线运营管理平台,山西专业制作网站Emitter 是什么? Emitter是一种作用在进程内的事件处理机制,为应用程序提供订阅事件、发布事件、取消事件订阅的能力。 场景介绍 Emitter用于同一进程内相同线程或不同线程间的事件处理,事件异步执行。使用时需要先订阅一个事件&#xff0…

Emitter 是什么?

Emitter是一种作用在进程内的事件处理机制,为应用程序提供订阅事件、发布事件、取消事件订阅的能力。

场景介绍

Emitter用于同一进程内相同线程或不同线程间的事件处理,事件异步执行。使用时需要先订阅一个事件,然后发布该事件,发布完成后Emitter会将已发布的事件分发给订阅者,订阅者就会执行该事件订阅时设置的回调方法。当不需要订阅该事件时应及时取消订阅释放Emitter资源。(成对出现的)

运作机制

Emitter通过维护一个内部事件队列,来进行任务分发。应用需要先订阅某个事件并设置好该事件的回调方法,当应用程序发布事件后,就会往队列里面插入一个事件。任务队列会串行执行队列里面的任务,执行任务时会调用该任务订阅者的回调方法进行事件处理。

理解(就相当于一个全局的状态管理器。   发布一个状态的时候。会在 全局监听这个状态的变化。监听到变化后 执行对应的 回调函数  注意 不用的时候  注意及时的取消订阅)

官方文档

将 emitter 封装成一个类更好的调用

/** Copyright (C) 2024 桃花镇童长老 @pura/harmony-utils* Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with the License.* You may obtain a copy of the License at**     http://www.apache.org/licenses/LICENSE-2.0** Unless required by applicable law or agreed to in writing, software* distributed under the License is distributed on an "AS IS" BASIS,* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.* See the License for the specific language governing permissions and* limitations under the License.*/import { emitter } from '@kit.BasicServicesKit';/*** TODO Emitter工具类(进行线程间通信)* author: 桃花镇童长老ᥫ᭡* since: 2024/05/01*/
export class EmitterUtil {/*** 发送事件* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param data 发送的数据* @param EventPriority 事件被发送的优先级*/static post<T>(eventId: string | number, eventData: T, priority: emitter.EventPriority = emitter.EventPriority.HIGH) {const genericEventData: emitter.GenericEventData<T> = { data: eventData };const options: emitter.Options = { priority: priority };emitter.emit(eventId.toString(), options, genericEventData);}/*** 订阅事件* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param callback 事件的回调处理函数。*/static onSubscribe<T>(eventId: string | number, callback: Callback<T>) {emitter.on(eventId.toString(), (eventData: emitter.GenericEventData<T>) => {callback(eventData.data);});}/*** 单次订阅指定事件* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param callback 事件的回调处理函数。*/static onceSubscribe<T>(eventId: string | number, callback: Callback<T>) {emitter.once(eventId.toString(), (eventData: emitter.GenericEventData<T>) => {callback(eventData.data);});}/*** 取消事件订阅* @param eventId 事件ID,string类型的eventId不支持空字符串。*/static unSubscribe(eventId: string | number) {emitter.off(eventId.toString());}/*** 获取指定事件的订阅数* @param eventId 事件ID,string类型的eventId不支持空字符串。* @returns*/static getListenerCount(eventId: number | string): number {return emitter.getListenerCount(eventId);}/*** 订阅事件,支持取消指定事件回调* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param callback 接收到该事件时需要执行的回调处理函数。*/static on<T>(eventId: string | number, callback: Callback<emitter.GenericEventData<T>>) {emitter.on(eventId.toString(), callback);}/*** 单次订阅指定事件,支持取消指定事件回调* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param callback 接收到该事件时需要执行的回调处理函数。*/static once<T>(eventId: string | number, callback: Callback<emitter.GenericEventData<T>>) {emitter.once(eventId.toString(), callback);}/*** 取消事件订阅,支持取消指定事件回调* @param eventId 事件ID,string类型的eventId不支持空字符串。* @param callback 取消该事件的回调处理函数。*/static off<T>(eventId: string | number, callback: Callback<emitter.GenericEventData<T>>) {emitter.off(eventId.toString(), callback);}}

具体的使用

 

http://www.dtcms.com/wzjs/836825.html

相关文章:

  • 苏州网站网络推广网站开发包括后台 前台
  • 如何上传网站到空间找钟点工做的网站
  • 广州营销网站制作钢材网站模板
  • 宁波网站建设使用技巧分享微信营销方式有哪些
  • 吴忠网站建设报价宁波网站推广联系方式
  • 牙科网站模板国外有什么网站做游戏吗
  • 如何制作外贸网站网站建设笔记
  • 学网站开发好找工作吗辽宁建设工程信息网老网站
  • 宝塔如何搭建网站网站开发九大优势
  • 山东网站建设方案制作商丘网络有限公司
  • 网站增加流量青岛企业网站制作
  • 做app必须有网站吗营销型网站的建设与推广辅导记录
  • iis搭建网站怎么做前端邯郸市第一医院
  • 非凡软件站首页调用网站栏目id
  • 通付盾 网站公司建设网站建设与维护 唐清安
  • 免费申请网站com域名五金配件店 东莞网站建设
  • 软件程序开发公司做竞价的网站可以做优化吗
  • 集团网站建设需求如何做自己网站的seo
  • 微信小程序开发教程视频长春求推荐好的网站优化推广
  • 邢台做wap网站价格网站备案号格式说明书
  • 整站营销系统网站开发的好处
  • wordpress百度站内搜索昌平区做网站
  • 规划和设计一个网站对网站专业性建设_宣传推广设计整体改进方案
  • 公司想做个网站应该怎么做亚马逊关联乱码店铺怎么处理
  • 电子商务网站软件建设的核心是什么专题类的网站
  • 馨雨公司网站建设策划方案wordpress段落开头空两格
  • 做网站建设公司crm在线的提升服务网站设计奖
  • 保定建站方案自己做网站生意怎么样
  • 工信部 网站备案规定vue做电商网站
  • 最全的数据网站成都装修设计公司排名