7 个不稳定版本 (3 个重大更改)
0.4.1 | 2023 年 12 月 3 日 |
---|---|
0.4.0 | 2023 年 12 月 1 日 |
0.3.1 | 2023 年 11 月 23 日 |
0.2.0 | 2023 年 11 月 16 日 |
0.1.1 | 2023 年 10 月 29 日 |
#8 in #map-reduce
1,499 下载/每月
在 paladin-core 中使用
10KB
113 行代码(不含注释)
为 RemoteExecute
特性实现的 Derive 宏。
这种构造允许操作以透明的方式由远程服务序列化和执行。它使用 linkme
仓库来收集所有操作执行指针到一个单独的切片,该切片由链接器收集到二进制文件的连续部分。
实现细节
为每个操作分配一个全局唯一标识符。然后,为每个操作生成一个独特的函数来处理序列化、执行和结果的反序列化。将此函数的指针注册到分布切片中,索引为操作标识符。这允许仅通过操作标识符来解除引用执行函数,该标识符与任务一起序列化。
这种方案允许发送给工作者的任务以透明的方式进行,同时仍然可以有效地查找和执行相应的操作。
依赖项
~295–750KB
~18K SLoC