Pharo 4 FFI 异步回调

Pharo 4 FFI async callbacks

在 Pharo 4 中处理异步 FFI 回调的选项(如果有)是什么?我所说的异步是指在设置回调的 FFI 函数完成并返回到 Smalltalk 后的某个时间,外语库调用回调。

图中的 NativeBoost 回调示例是同步的(回调发生在 FFI 函数执行时),它是否也适用于异步回调?

或者也许旧的 FFI 机制之一能够处理这种情况?

比起 CogMT,如果我理解它可以处理这种情况,但还有更多。这个虚拟机可以 运行 Pharo 4 吗?

目前无法在 Pharo 中执行此操作:(

CogMT 是实验性的,目前无法真正使用,我们正在开发 ThreadedFFI,这正是您所要求的,但它要到年底才能准备就绪(希望如此)。

目前所有的努力都在迁移到 Spur VM(和 ARM Cog)。这要快得多,并提供固定对象(仅次于 64 位图像)。它提供了新的可能性,但与现有机器并不完全兼容。此外,NativeBoost 目前是特定于 x86 的,需要针对 x64 和 ARM 进行更改。