我试图实现的最终结果是允许服务器在建立连接时将特定任务分配给客户端。一个简化的版本是这样的
- 客户端连接到服务器
- 服务器告诉客户端运行一些网络任务
- 客户端收到任务并启动另一个进程来完成任务
- 客户端告诉服务器它已经启动
- 服务器告诉客户端它有另一个任务要做(等等......)
一些笔记
- 客户可以完成的任务数量会有上限
- 客户端需要能够监控任务/进程(运行?死了?)
- 如果客户端可以从进程接收数据并在需要时发送到服务器,那就太好了
起初,我打算尝试线程,但我听说 python 没有正确执行线程(是对还是错?)
然后它被认为从 python 触发系统调用并记录 PID。然后向它发送某些信号以获取状态,停止,(SIGUSR1,SIGUSR2,SIGINT)。但不确定这是否可行,因为我不知道我是否可以从另一个进程中捕获数据。如果可以的话,我不知道如何实现。(标准输出或套接字文件?)
就处理这个问题的最佳方法而言,你们会提出什么建议?