c++中用两个线程交替输出 AB 就像ABABABAB这样输出

c++中用两个线程交替输出 AB 就像ABABABAB这样输出,第1张

void OutP(int nIsFirst)

{

static char aC[] = "AB"

static int sFirst = 1

if (sFirst != nIsFirst)

return

cout <<(aC[sFirst])

sFirst = !sFirst

}

开两线程,一线程一直调用OutP(0),另一线程一直调用OutP(1),即实现交替输出

BAC的顺序,只是启动下一个线程前,需要等待另一个线程的结果返回,你可以配合接口,来回调,

例如:

class Main implement BListener{

public void startTask(){

启动B线程,并传入listener实例,来回调用

}

//override

public void BTaskComplete(){

B线程成功执行

启动A线程

}

}

class B extends Thread{

可以构造时获取Listener实例

public void run(){

...

执行完毕出结果,Listener.BTaskComplete()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7680238.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存