IPC跨进程通信中是否支持异步返回数据

​IPC跨进程通信中是否支持异步返回数据。

HarmonyOS
2024-01-21 13:15:24
浏览
已于2024-1-22 17:18:41修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
akikiro

支持,将服务端的onRemoteMessageRequest函数中的option设置为异步即可。

示例代码

import { rpc } from '@kit.IPCKit'; 
 
class TestRemoteObject extends rpc.RemoteObject { 
  constructor(descriptor: string) { 
    super(descriptor); 
  } 
 
  async onRemoteMessageRequest(code: number, data: rpc.MessageSequence, reply: rpc.MessageSequence, option: rpc.MessageOption): Promise<boolean> { 
    if (code === 1) { 
      console.log("RpcServer: async onRemoteMessageRequest is called"); 
    } else { 
      console.log("RpcServer: unknown code: " + code); 
      return false; 
    } 
    await new Promise((resolve: (data: rpc.RequestResult) => void) => { 
      setTimeout(resolve, 100); 
    }) 
    return true; 
  } 
}

参考链接

IPC与RPC通信开发指导

分享
微博
QQ
微信
回复
2024-01-22 17:32:47
相关问题
IPC跨进程通讯是否能够异步返回数据
387浏览 • 1回复 待解决
公共事件实现跨进程通信
853浏览 • 1回复 待解决
HarmonyOS preference支持跨进程读写吗?
144浏览 • 1回复 待解决
鸿蒙是否进行异步通信
3878浏览 • 1回复 待解决
如何跨进程调用其他应用的服务
1641浏览 • 1回复 待解决
IPC与RPC通信有什么约束限制?
338浏览 • 1回复 待解决
HarmonyOS 关系型数据库api异步返回
410浏览 • 1回复 待解决
OpenHarmony L1 Ipc samgr_lite通信报错异常
8023浏览 • 2回复 待解决
基于libuv异步库进行线程通信
1901浏览 • 0回复 待解决