Re-exports§
pub use manager::ManagerActor;
pub use types::FailedGroupData;
pub use types::FailedGroupDataTransmission;
pub use types::FailedReservationInfo;
pub use types::FinalizeResult;
pub use types::SuccessfulGroupData;
pub use manager::ManagerComponents;
pub use manager::components::FinalizationHandler;
pub use manager::components::GroupDataProcessor;
pub use manager::components::GroupLifecycleManager;
pub use manager::components::ReservationAllocator;
pub use manager::components::group_data_processor::ProcessedGroupOutcome;
pub use manager::components::group_data_processor::ProcessingError;
pub use manager::components::group_data_processor::ProcessorTaskError;
Modules§
- defaults
- 定义和导出库的默认组件实现。 这个模块旨在提供一套可以直接使用的标准组件,简化库的基本使用。
- manager
- 定义
ManagerActor
及其核心逻辑。 - types
- 定义库的核心数据结构和类型别名。
Macros§
- spawn_
manager - 一个宏,用于简化
ManagerActor
的启动过程。
Structs§
- Chunk
Agent - 用于执行分块数据提交的代理。
用户多次调用
submit_chunk
添加数据块,最后调用commit
将所有块发送给 Manager。 如果 Agent 在commit
成功前被 Drop,它将通知 Manager 预留失败。 - Single
Agent - 用于执行单次完整数据提交的代理。
用户调用
submit_bytes
方法提交数据。 如果 Agent 在submit_bytes
成功前被 Drop,它将通知 Manager 预留失败。 - Submit
Agent - 提交代理(SubmitAgent)是用户通过
ZeroCopyHandle::reserve_writer
成功预留空间后获得的对象。 它代表一个已确认的预留,包含预留 ID、偏移量和大小。 用户必须将此 Agent 转换为SingleAgent
或ChunkAgent
来实际提交数据, 或者直接 Drop 它以取消预留(这会通知 Manager 预留失败)。 - Zero
Copy Handle - 与
ManagerActor
交互的句柄。
Enums§
- Buffer
Error - 用户与
ZeroCopyHandle
交互时可能遇到的顶层错误类型。 - Manager
Error ManagerActor
内部处理逻辑中可能产生的具体错误。
Functions§
- _spawn_
manager_ with_ components_ token - 使用 ZST (Zero-Sized Type) 组件标记来启动
ManagerActor
的辅助函数。