我有一个在QT框架(C++)中的软件,假设它将处理过的(本地)数据分发到其他服务器,并接收在其他服务器上处理过的相同(外部)数据并进行比较。QTcpServer接收和发送不同的线程
处理大量本地数据时会出现问题将外部数据缓存起来,直到发送完所有本地数据后才会进入比较过程。我需要在特定时间范围内比较数据,因此会导致超时。
一个想法是使用一个线程来分派本地数据,另一个线程来接收和比较外部数据。 QTcpServer可能需要一个互斥锁来防止它同时读写。
这可能与一个连接有关吗,还是最好有一个连接用于调度,一个用于QT环境中的接收?
我查了财富服务器的例子 http://doc.qt.io/qt-5/qtnetwork-threadedfortuneserver-example.html 但我需要知道是否有可能和逻辑使用不同的线程来发送和接收相同的连接上。
PS。我是多线程新手,所以如果我误解了某些概念,我很抱歉。
'QTcpConnection'只能存在于_one_线程中。您可以在同一个线程中发送/接收。也就是说,你不需要在与连接相同的线程中处理数据,这是实际需要一段时间的部分。 –