• 2457阅读
  • 4回复

[提问]新建一个线程,一些参数数据怎么给他? [复制链接]

上一主题 下一主题
离线hpplel
 

只看楼主 倒序阅读 楼主  发表于: 2018-06-21
如题!
看网上一些例子都是子线程发信号,主线程接受。
但是,对于新建的线程,怎么给他需要操作的数据参数呢?
信号槽?这样对吗:我给线程的槽传信号,线程的槽把传入的数据写到线程的变量里吗?然后通知run运行?(怎么通知也不会啊!)
请大家帮忙谢谢~!能提供个简单的实例最好啦~
在线uidab

只看该作者 1楼 发表于: 2018-06-21
  1. QThread * thread = new QThread;
  2.     QtThreadFuncClass* funcclass = new QtThreadFuncClass;
  3.      funcclass->moveToThread(thread);
  4.     QObject::connect(thread, &QThread::started, funcclass, &QtThreadFuncClass::ThreadFunc, Qt::DirectConnection);
  5.     thread->start();
  6.   

看第4行,你可以写类似的 ,最后一个参数请自己学习。
  1. QObject::connect(this, this的信号, funcclass, &QtThreadFuncClass::某个Func, Qt::QueuedConnection);



有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线ustone

只看该作者 2楼 发表于: 2018-06-21
通过MyThread构造函数的参数?
离线hpplel

只看该作者 3楼 发表于: 2018-06-22
回 ustone 的帖子
ustone:通过MyThread构造函数的参数? (2018-06-21 20:27) 

谢谢,试了下这个可以
离线hpplel

只看该作者 4楼 发表于: 2018-06-22
回 uidab 的帖子
uidab:QThread * thread = new QThread;
    QtThreadFuncClass* funcclass = new QtThreadFuncClass;
     funcclass->moveToThread(thread);
    QObject::connect(thread, &QThread::started, funcclass, &Q .. (2018-06-21 16:00) 

参数数据在funcclass 里设置是吗?
这个类QtThreadFuncClass;能给个小例子吗?
快速回复
限100 字节
 
上一个 下一个