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

百度站内搜索 wordpress微餐饮建站费用

百度站内搜索 wordpress,微餐饮建站费用,linux虚机 wordpress,做网络推广工作怎么样【HarmonyOS Next】鸿蒙应用进程和线程详解 一、前言 进程的定义#xff1a; 进程是系统进行资源分配的基本单位#xff0c;是操作系统结构的基础。 在鸿蒙系统中#xff0c;一个应用下会有三类进程#xff1a; (1) 主进程#xff0c; (2) ExtensionAbility进程#xff…【HarmonyOS Next】鸿蒙应用进程和线程详解 一、前言 进程的定义 进程是系统进行资源分配的基本单位是操作系统结构的基础。 在鸿蒙系统中一个应用下会有三类进程 (1) 主进程 (2) ExtensionAbility进程同一种类型的ExtensionAbility会放在一个进程里。例如FromExtensionAbility创建了两个也会在同一个进程里。【ExtensionAbility详情参见官方链接ExtensionAbility组件】 (3) WebView渲染进程用于网页容器渲染的进程。【这种设计提升了鸿蒙系统中arkWeb的网页容器渲染能力】 线程的定义 线程是操作系统进行运算调度的基本单位是进程中的执行流共享进程的资源。 鸿蒙系统中以主进程举例会有三种类型的线程 1主线程 2TaskPool Worker线程 3Worker线程 后两者用于创建多线程TaskPool Worker主要用于处理轻量级的耗时任务。Worker用于偏重的耗时任务。 二、进程处理 进程的创建 如上图所示三方应用可以创建XXExtensionAbility的形式增加应用内的进程。但是Webview渲染进程和主进程的是不能创建增加。 跨进程通信 鸿蒙系统目前提供了两种方式实现跨进程通信公共事件和Emitter。这两个方案外startAbility也可传递一些信息。 公共事件主要是监听系统的事件分为系统公共事件和自定义事件。三方应用主要通过自定义事件来通信。 import { commonEventManager } from kit.BasicServicesKit; import { BusinessError } from kit.BasicServicesKit;// 定义订阅者用于保存创建成功的订阅者对象后续使用其完成订阅及退订的动作 let subscriber: commonEventManager.CommonEventSubscriber; // 订阅者信息 let subscribeInfo: commonEventManager.CommonEventSubscribeInfo {events: [event] }; // 创建订阅者回调 function createCB(err: BusinessError, commonEventSubscriber: commonEventManager.CommonEventSubscriber) {if (err ! null) {console.error(Failed to create subscriber. Code is ${err.code}, message is ${err.message});} else {console.info(Succeeded in creating subscriber);subscriber commonEventSubscriber;} } // 创建订阅者 commonEventManager.createSubscriber(subscribeInfo, createCB);Emitter的使用类似于EventHub只不过在这个基础上多了传递包裹的封装添加了优先级和序号。也新增了once监听一次的接口而已。 Sendable class Sample {constructor() {this.count 100;}printCount() {console.info(Print count : this.count);}count: number; }let callback (eventData: emitter.GenericEventDataSample): void {let storage: Sample eventData.data!;storage.printCount(); } // 收到eventId为eventId的事件后执行回调函数 emitter.on(eventId, callback);三、线程处理 1.线程的创建和线程间通信 如上所说可以使用TaskPool Worker 和 Worker创建线程。并且配套会有双向通信的接口。 需要注意的是前者有性能要求太过于耗时的操作例如超过三分钟就会无条件失败这种耗时任务就要使用后者Worker来实现。不过后者又因为消耗系统资源一个应用只能创建八个。 TaskPool Worker Concurrent function printArgs(args: number): number {console.info(printArgs: args);return args; }taskpool.execute(printArgs, 100).then((value: Object) { // 100: test numberconsole.info(taskpool result: value); });Worker // Worker.ets import { worker, MessageEvents, ErrorEvent } from kit.ArkTS;// 创建worker线程中与宿主线程通信的对象 const workerPort worker.workerPort// worker线程接收宿主线程信息 workerPort.onmessage (e: MessageEvents): void {// data宿主线程发送的信息let data: number e.data;// 往收到的buffer里写入数据const view new Int8Array(data).fill(3);// worker线程向宿主线程发送信息workerPort.postMessage(view); }// worker线程发生error的回调 workerPort.onerror (err: ErrorEvent) {console.log(worker.ets onerror err.message); }// Index.ets import { worker, MessageEvents, ErrorEvent } from kit.ArkTS;Entry Component struct Index {State message: string Hello World;build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold).onClick(() {// 宿主线程中创建Worker对象const workerInstance new worker.ThreadWorker(entry/ets/workers/Worker.ets);// 宿主线程向worker线程传递信息const buffer new ArrayBuffer(8);workerInstance.postMessage(buffer, [buffer]);// 宿主线程接收worker线程信息workerInstance.onmessage (e: MessageEvents): void {// dataworker线程发送的信息let data: number e.data;console.info(main thread data is data);// 销毁Worker对象workerInstance.terminate();}// 在调用terminate后执行onexitworkerInstance.onexit (code) {console.log(main thread terminate);}workerInstance.onerror (err: ErrorEvent) {console.log(main error message err.message);}})}.width(100%).height(100%)}} }2.线程内通信 EventHubGlobalThis单例AppStorage。都可实现线程内UI界面UIAbility和业务类之间的通信。
http://www.w-s-a.com/news/520513/

相关文章:

  • 用什么做网站的访问量统计制作手工作品
  • 微信公众号搭建网站河南卫生基层系统网站建设
  • steam账号注册网站重庆手机版建站系统哪家好
  • 中新生态城建设局门户网站wordpress云盘视频播放
  • 大型网站开发基本流程wordpress记录用户搜索
  • 云服务器安装win系统做网站wordpress边栏扩大尺寸
  • 网站开发面试自我介绍软件下载网站如何建设
  • 可以做翻译任务的网站陕西省建设厅八大员证
  • 昆明 网站推广重庆网页优化seo公司
  • 网站排名下降怎么上去设计一套app页面多少钱
  • 专门用来查找网址的网站查公司名字是否被注册
  • 自己创建网站教程河南省建设厅官方网站李学军
  • 一个网站需要多少容量怎样免费设计网站建设
  • 建设工程交易中心网站12306的网站是哪个公司做的
  • 建设网站经营范围自己给公司做网站
  • 河北省住房建设厅政务网站网络营销推广的岗位职责有哪些
  • 上海网站建设优化价格孝义做网站的公司
  • 哪个公司网站做的最好义乌 网站 制作
  • 百度站长工具综合查询wordpress 上传pdf
  • 旅游短租公寓网站建设深圳龙岗招聘网
  • 做海淘是在哪个网站网络查控系统设计方案
  • o2o网站建设代理商微信公众号开发文档
  • 网站设计课程总结关于网站备案的公告
  • 网站建设与运营意义到哪查找网站域名
  • 网站及单位网站建设情况眉县住房和城市建设局网站
  • 网站是否能够被恶意镜像wordpress占用
  • 经典设计网站网站等保测评怎么做
  • 重庆做网站公司贴吧廊坊公司快速建站
  • 海外贸易在什么网站做怎么排名到百度第一页
  • 线上注册公司是在哪个网站做高仿网站