根据这里http://doc-snapshot.qt-project.org/4.8/qiodevice.html
QIODevice的某些子类,例如QTcpSocket和QProcess,是异步的。
例如,第一次写入调用已发送一块数据。现在,在第一次写入调用完成之前,还进行了第二次写入调用以发送另一块数据。
现在发生了什么?在开始发送块之前,第二个呼叫是否等待第一个呼叫完全完成?
答案 0 :(得分:1)
数据至少由系统TCP堆栈缓冲,因此每次调用write
“只是”将新块附加到等待发送的未写入数据。
但是如果从2个未同步的线程中调用write
,则结果是未定义的。