【问题标题】:Multithreading or Asynchronous for Python GTK/Socket Server/Data WritingPython GTK/Socket 服务器/数据写入的多线程或异步
【发布时间】:2016-05-28 18:37:52
【问题描述】:
我是 Python、套接字、多线程和异步编程的新手。我想知道什么是实现服务器的最佳方法,该服务器在 Unity3D 游戏等客户端之间接收和发送数据,并使用 Python GTK 在 GUI 中绘制这些数据,同时将这些数据实时写入文本文件。让事情变得更复杂一些,数据来自以 300 毫秒的速度接收注视数据的 Eyetracker。鉴于这些要求,使用线程还是异步更好?此外,我应该创建一个 UDP 或 TCP 服务器来交换数据吗?
如果需要更多信息,请告诉我。谢谢。
【问题讨论】:
标签:
python
multithreading
sockets
asynchronous
unity3d
【解决方案1】:
使用 TCP。 UDP 主要用于视频/音频流等。这里不是这样。
对于 Unity 中的 async 与 thread,我建议您使用 Thread。这更容易,并且您可以保证您的网络代码不会以任何方式减慢 Unity。
Unity3D 游戏并使用 Python GTK 在 GUI 中绘制这些数据
如果您从眼动仪接收数据,您应该能够使用 Unity 绘制数据。如果您的要求是使用 Python,那么仍然可以在 Unity 和您的 Python 应用程序之间建立服务器/客户端连接。