标签: c++ multithreading c++11
我有一个从队列中读取命令对象的线程池。每个命令对象都是具有单个execute()方法的抽象命令类的实现,即命令模式。
我想实现一个使线程自行停止的命令,即execute()方法停止当前线程。通常我只是从线程函数返回,但我需要从execute()方法中停止线程。
最好的方法是什么?我可以使用detach或destroy,但主程序调用连接所有线程,我不确定它是否可行。假设线程有权访问的所有内容都已解锁。