我是c ++的初学者,但我必须在我的项目中实现一些先进的东西。 基本上我想创建队列容器数组。我有一个设备类,它具有类型为op_parmas_t的队列,并且应用程序在该队列中排队。但是现在我希望不同的线程在不同的队列上运行但是单个设备,所以我需要在设备类中使用队列数组。
class DeviceCPU : publice Device {
Public:
DeviceCPU();
~DeviceCPU();
int enqueue(op_params_t *op);
Private:
std::queue<op_params_t *> opsEnqueued;
}
但是对于多个线程,我想要不同的队列。所以我想创建队列数组, 像,
std::queue<op_params_t *> opsEnqueued[MAX_THREADS];
或者可能是我可以创建队列的向量,但我不确切知道如何,需要一些指针。
答案 0 :(得分:0)
#include <array>
std::array<std::queue<op_params_t*>, MAX_THREADS> opsEnqueued;
答案 1 :(得分:0)
使用动态数组
#include <vector>
std::vector<std::queue<op_params_t *>> opsEnqueued;