繁体   English   中英

python中的网络应用程序和GUI

[英]networking application and GUI in python

我正在编写一个通过网络发送文件的应用程序,我想开发一个自定义协议,以限制自己的功能丰富性(http不合适,最接近的可能是bittorrent协议)。

我试过扭曲,我已经构建了一个很好的应用程序但是有一个扭曲的错误使我的GUI阻塞,所以我要切换到另一个框架/策略。

你有什么建议? 使用原始套接字和使用gtk mainloop(工具包中有类似选择的函数)太难了吗?

在不同的线程中运行两个主循环是否可行?

寻求建议

两个线程:一个用于GUI,一个用于发送/接收数据。 Tkinter将是一个非常好的工具包。 您不需要扭曲或任何其他外部库或工具包 - 开箱即用的功能足以完成工作。

免责声明:我对网络应用程序的经验不足。

话虽这么说,原始插座并不是非常难以包裹你的头/使用,特别是如果你不太担心优化。 当然,这需要更多的思考。 但是使用GTK和原始套接字应该相当简单。 特别是因为你已经使用了扭曲的框架,IIRC只是抽象出了套接字管理的一些更细微的细节。

如果你的应用程序有点类似于bittorrent,为什么不检查Deluge http://deluge-torrent.org/的源代码并从中构建? 用Python编写的,它确实使用了bittorrent协议,它确实有一个GTK用户界面。

作为扭曲和你似乎使用的任何GUI库的替代,尝试PyQt怎么样? 它在同一个事件循环中提供GUI和非阻塞套接字。 这样您就不必担心互操作性问题,这似乎是您面临的问题。

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM