From e9120e80bd202b9a13971c19e8e975f3c22fe630 Mon Sep 17 00:00:00 2001 From: wusongqing Date: Sat, 2 Jul 2022 03:30:02 +0000 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=96=87=E6=A1=A3=E4=BD=93=E9=AA=8C?= =?UTF-8?q?=E5=AE=98=E3=80=91=E4=BD=BF=E7=94=A8=E8=A1=A8=E6=A0=BC=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E6=8E=A5=E5=8F=A3=E5=91=88=E7=8E=B0=E6=96=B9=E5=BC=8F?= =?UTF-8?q?=20Signed-off-by:=20wusongqing=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../connectivity/subscribe-remote-state.md | 20 ++++++++----------- 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/zh-cn/application-dev/connectivity/subscribe-remote-state.md b/zh-cn/application-dev/connectivity/subscribe-remote-state.md index 5be9a67ad5..2dee9fc483 100755 --- a/zh-cn/application-dev/connectivity/subscribe-remote-state.md +++ b/zh-cn/application-dev/connectivity/subscribe-remote-state.md @@ -1,24 +1,20 @@ # 远端状态订阅开发实例 -IPC/RPC 提供对远端 Stub对象状态的订阅机制, 在远端 Stub对象死亡时,可触发死亡通知告诉本地 Proxy对象。这种状态通知订阅并不会自动附加在每个本地 Proxy对象上,需要调用特定接口完成,当不再需要订阅时也需要调用特定接口取消。使用这种订阅机制的用户,需要实现死亡通知接口DeathRecipient并实现onRemoteDied方法,清理资源,该方法会在 远端 Stub对象所在进程死亡,或所在设备离开组网时被回调。值得注意的是,调用这些接口有一定的顺序。首先,需要 Proxy订阅 Stub死亡通知,若在订阅期间Stub状态正常,则可在不再需要时取消订阅;若在订阅期间 Stub所在进程退出,或者所在设备退出组网,则会自动触发 Proxy自定义的后续操作。 +IPC/RPC提供对远端Stub对象状态的订阅机制, 在远端Stub对象死亡时,可触发死亡通知告诉本地Proxy对象。这种状态通知订阅需要调用特定接口完成,当不再需要订阅时也需要调用特定接口取消。使用这种订阅机制的用户,需要实现死亡通知接口DeathRecipient并实现onRemoteDied方法清理资源。该方法会在远端Stub对象所在进程死亡或所在设备离开组网时被回调。值得注意的是,调用这些接口有一定的顺序。首先,需要Proxy订阅Stub死亡通知,若在订阅期间Stub状态正常,则在不再需要时取消订阅;若在订阅期间Stub所在进程退出或者所在设备退出组网,则会自动触发Proxy自定义的后续操作。 -**Native侧接口** +## Native侧接口 +| 接口名 | 功能描述 | +| -------- | -------- | +| AddDeathRecipient(const sptr\ &recipient); | 订阅远端Stub对象状态。 | +| RemoveDeathRecipient(const sptr\ &recipient); | 取消订阅远端Stub对象状态。 | +| OnRemoteDied(const wptr\ &object); | 当远端Stub对象死亡时回调。 | -依次为添加对远端Stub对象状态订阅的接口,取消订阅的接口,及感知到远端Stub对象死亡而进行本地操作的接口: - -``` -bool AddDeathRecipient(const sptr &recipient); -bool RemoveDeathRecipient(const sptr &recipient); -void OnRemoteDied(const wptr &object); -``` - - -参考代码 +## 参考代码 ``` -- GitLab