我试图使服务器和客户端成为没有套接字的类似程序,因为我无法使用互联网来传递数据。 我尝试使用pipe stdin进行操作,但无法进行该工作... 我有什么选择?
服务器:
onReceive()
客户:
BroadcastReceiver
答案 0 :(得分:1)
您的任务称为进程间通信或IPC。 Python提供了a number of ways来实现这一目标。
最好的方法可能是实际使用套接字。如果将套接字绑定到本地主机地址(127.0.0.1),则所有通信都通过计算机上的虚拟网络适配器(环回适配器)进行。实际上没有数据通过网络。
另一种与平台更相关的方式是使用unix套接字(基本上是具有类似文件的实体作为地址的套接字,权限决定了谁可以读取或写入该套接字)或使用命名管道(基本上是不存储的虚拟文件)信息,就像管道一样传递它们。
使用内存映射的区域要复杂得多,通常需要一些其他机制来同步数据状态,但是它们会以极高的速度和随机访问功能为您提供奖励。您可能不应该将其用于服务器/客户端程序...
P.S .:如果您要添加代码并展开“无法完成该工作”以完整地说明您的操作,那么StackOverflow会更好。
答案 1 :(得分:0)
您有很多选择,套接字(最简单的一种)不一定使数据通过Internet传输,即使您有一些限制,管道或共享内存(困难的一种)