查看完整版本: [--
QWebSocket多线程访问问题
--]
QTCN开发网
->
Qt基础编程
->
QWebSocket多线程访问问题
[打印本页]
登录
->
注册
->
回复主题
->
发表主题
abc127546
2016-12-29 10:47
QWebSocket多线程访问问题
thread->start();
worker->moveToThread(thread);
worker为QWebSocket的类,移到其他线程后调用
m_socket
->
sendTextMessage
(
mess
);
QSocketNotifier: Socket notifiers cannot be enabled or disabled from another thread
dbzhang800
2016-12-29 11:07
移到其他线程后,所有操作都需要在那一个线程内进行。不要在其他线程内直接使用你这个socket
abc127546
2016-12-29 11:10
就是在新线程中运行的,打印了currentThreadID,确实是在新线程进行的发送操作。是否在QWebSocket不支持多线程访问,虽然把QWebSocket移动到了新建立的线程,但是QWebSocket内部的QTcpSocket我怀疑,没能跟着它移到其他线程,Qt也没有提供方法移动websocket内部的tcpsocket,因此出现这个问题
abc127546
2016-12-29 11:11
dbzhang800
:
移到其他线程后,所有操作都需要在那一个线程内进行。不要在其他线程内直接使用你这个socket
(2016-12-29 11:07)
就是在新线程中运行的,打印了currentThreadID,确实是在新线程进行的发送操作。是否在QWebSocket不支持多线程访问,虽然把QWebSocket移动到了新建立的线程,但是QWebSocket内部的QTcpSocket我怀疑,没能跟着它移到其他线程,Qt也没有提供方法移动websocket内部的tcpsocket,因此出现这个错误
查看完整版本: [--
QWebSocket多线程访问问题
--] [--
top
--]
Powered by
phpwind
v8.7
Code ©2003-2011
phpwind
Gzip disabled