进程之间的通信目前使用了QLocalSocket和QLocalSever,目前在windows系统上测试,出现了以下问题,希望帮助分析,谢谢:
1. 客户端连接上主机后,通过调用write(字节串),然后立即flush,有些时候flush后返回false,不知道为什么?
2. 主机接收的处理在线程中进行,方式时在客户端连接成功后启动一个接收线程,用于处理接收;但是如果线程使用方式是movetoThread方式,在线程中使用bytesAviable和read(读到字符串中)进行处理,当客户端连续100ms间隔发送大量数据时,会出现“QIODevice: read call maxsize< 0”的错误;如果线程处理方式使用的是run方式,在run中使用waitforread和bytesaviable以及read读取,常常waitforread返回假,当然并没有开readyread信号对应的槽函数。
以上两个问题,非常怪异,希望技术大拿指导,谢谢!