2013-01-08 20 views
0

我想实现diagram shown below中所述的条件。Qt中使用QThread的线程序列化

我想让线程1个等到线程2已完成做一些工作和线程后2所完成的工作线程1提出,要醒来。我会使用QThread的QWaitcondition还是简单的sleep()方法?如果QWaitcondition然后我应该如何框架我的等待条件...任何建议是受欢迎的..

+1

while(true)do Job1(); Job2(); }; –

+0

@MartinJames ....你能稍微详细一点,请... –

回答

0

最简单的方法来做到这一点将是从一个信号调用你的Thread1 Job1函数,并有此功能发出一个信号开始Job2。当Job2完成时,它会发出一个信号,然后再次启动Job1。你的图本质上是你想要做的,但只是改变接收到的信号,以作为与工作挂钩的信号。

除非你需要有作业1的极端时序要求立即只要作业2完成启动,你会不会想要做的任何类型的条件“等待”。这会吸引一个核心或效率很低。