2

这是一个真正的问题。

我正在使用命名管道在进程/线程之间传输数据,但是这个数据是字符串类型的,是否可以通过这种方式传递和对象?

反正有传递对象吗?

我的问题如下:

我有一个线程导弹和一个进程世界。World 接收到 Missile 的位置并返回新位置的计算结果。

现在我正在通过从管道中写入的字符串获取信息来做到这一点。有没有办法将它作为对象或元组传递?

如果有人可以帮助我,那就太好了!谢谢。

4

2 回答 2

6

您可以使用该Marshal模块通过字节流传递任意 OCaml 值。做对很棘手,所以我建议阅读手册的 Marshal 部分。主要的是它只传递值,而不是类型。因此,您的接收过程将需要对正在传递的对象的确切类型进行定义,并且您需要在接收器中明确指定类型。

包含函数的值(包括 OO 样式的对象)只能在同一程序的副本之间进行编组。也许这适用于您的情况(因为您提到您有一个线程),但无论如何使用元组可能会更好。

于 2012-12-12T04:06:02.950 回答
0

将对象转换为 JSON?在进程之间传递数据作为 JSON 字符串?

于 2019-02-15T23:45:39.863 回答