首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

qt多线程,该怎么处理

2014-01-13 
qt多线程是这样的,我最近写QT程序,遇到一个多线程的问题,想请教一下。如何能让某个类实现,让它所处的线程sl

qt多线程
是这样的,我最近写QT程序,遇到一个多线程的问题,想请教一下。
如何能让某个类实现,让它所处的线程sleep一段时间
大概是这样的
    class A:public Qthread
    {
       void run()
       {
         B b;
         b.fun();
          exec();
        }
     };
    class B:public Qobject
    {
     public:
        fun()
        {
           //在这里,我需要让对应的A线程sleep一会,该如何做?
        }
   }
希望有大牛给指导。

[解决办法]
你设置一个信号量,让A阻塞在这个信号量那,再在B的fun里先延时你需要的时间,再让这个信号量+1,让后A就又能继续运行了
[解决办法]
在fun()里面加上这么一段代码:


QMutex dummy;
dummy.lock();
QWaitCondition waitCondition;
waitCondition.wait(&dummy, 1000); // wait for 1000 milliseconds.

热点排行