【发布时间】:2017-01-04 09:06:05
【问题描述】:
我使用的是 Qt 5.6。我正在开发一个简单的聊天应用程序,并在网上遇到几个地方都说你必须创建一个新线程来包含QTcpSocket 来处理新线程中的所有新连接。
我试图弄清楚为什么您不能只使用QList 或QTcpSockets 来处理所有连接。谁能给我解释一下为什么?
如果我弄错了,这是一件非常好的事情,也请告诉我。
提前致谢。
【问题讨论】:
-
您可以拥有
QTcpSockets 的QList来处理主线程上的所有连接。事实上,这种解决方案在 Qt 中是首选的。您根本不必为每个连接创建一个新线程。 -
提供一些您所指的在线地点的链接。我不明白“创建一个新线程以包含
QTcpSocket以处理 所有 连接”是什么意思,你会如何有可以处理所有连接的QTcpSocket?你的意思是QTcpServer? -
@Mike 哦,我的意思是说我为每个
QTcpSocket创建一个新线程。最值得注意的是,我是从 voidrealm 在 YouTube 上的 qt 播放列表中听到的。我是在深夜做的,所以我有点累。感谢您的回复。
标签: multithreading qt sockets qtcpsocket qtcpserver