SDKPython SDK

核心对象与生命周期

理解 Sdk、Exo、ExoDevice 和通道对象的职责与关闭关系。

当前版本 · 1.0.0

核心对象与生命周期

对象层级

Sdk
└── Exo                  sdk.exo()
    └── ExoDevice       exo.device(name)
        ├── telemetry()
        ├── status()
        └── haptics()
  • Sdk 持有原生运行时和所有设备配置;一个进程通常只创建一个实例。
  • Exo 管理整个 Exo 域的启动、调度、停止、健康状态和关闭。
  • ExoDevice 选择一台逻辑设备,提供设备信息、数据通道和震动控制。
  • ReadChannel 支持 latest()、subscribe() 和异步 next()。

生命周期

单设备程序优先使用域级调用:exo.start() → 运行 → exo.stop() → exo.close()。多设备需要分别启停时使用 device.start() 和 device.stop()。

关闭父对象会使子设备和通道失效;关闭后继续调用会抛出 ClosedHandleError。根 sdk.close() 会清理仍存活的资源。