【发布时间】:2017-05-20 06:31:18
【问题描述】:
我有一个 c++ 程序,它创建一个绑定到“/tmp/.mysocket”的本地套接字并等待从该套接字接收数据。它的设置方式是,原始二进制数据将被发送到套接字并加载到以下 C++ 结构中:
struct StateVariable
{
char Name[64];
int E[8];
};
C++ 程序使用 recvfrom 监听输入:
int nBytes = recvfrom(SD,&DataReceived,sizeof(StateVariable)/sizeof(char),0,(sockaddr*)&SentFrom,&size);
服务器只是使用标准的 AF_UNIX 和 SOCK_DGRAM 来创建套接字。
我的问题与 python 有关:如何使用 python 将数据发送到绑定到 /tmp/.mysocket 的本地套接字?我没有使用 AF_INET 或为此打开特定端口。
我可以使用 python 的套接字库来描述套接字,但我找不到任何讨论将套接字绑定到 python 中的文件并将数据发送到该套接字的资源。套接字库的文档只讨论了将 AF_INET 和 SOCK_DGRAM 用于绑定到 127.0.0.1 端口号的本地套接字,但我没有这样做。
如何让 python 将数据发送到绑定到文件的套接字?是否有一个示例 python 程序可以做到这一点(可能是演示此功能的客户端/服务器对)?只要我能让python把数据发送到本地文件socket,剩下的我都能搞定。
【问题讨论】:
-
远程过程调用机制被编程了10000次。谷歌已有的方法。