我用的是是 GITHUB 上的那个
https://github.com/cameron314/concurrentqueue自己定义了一个 class
class AppCmd
{
virtual void execute() = 0;
}
class MyCmd : public Appcmd
{
MyCmd(MyObject & obj, params) :
mObj(obj),
mParams(params)
{}
void execute()
{
mObj.xxx(mParams);
}
MyObject & mObj;
Params mPararms;
}
ConcurrentQueue<AppCmd> fifo;
线程 A: fifo.enqueue(cmd);
线程 B:
void loop(0
{
while(!mShutdown)
{
AppCmd cmd;
fifo.dequeue_wait_timed(cmd);
cmd.execute();
}
}
【 在 wjhtingerx 的大作中提到: 】
--
修改:speedboy2998 FROM 218.76.62.*
FROM 218.76.62.*