我有两个工作线程,我想按顺序运行,thread1& thread2一个接一个。为了控制它们,我使用了两个CEvent(MFC api)同步对象。我当前的实现(下面)并不完美,为什么它会进入死锁状态。请告诉我如何改进我的代码。
QApplication
理想情况下,我希望两个线程运行如下: -
表示i = 1到20。
线程1()。 线程2()。
对于i = 21到40。
线程1()。 线程2()。
表示i = 41至60。
线程1()。 线程2()。
对于i = 61到80。
线程1() 线程2()
表示i = 81到100
线程1()。 线程2()。
答案 0 :(得分:0)
只使用1个事件,设置全局矢量变化的信号要容易得多。 您必须使用类似CCricticalSection的同步来防止对全局向量的并发访问。