0

此代码是 nvme-cli 的一部分(它建立在 linux api 上)

我正在尝试构建一个选项来重复 nvme-command 说线程数的n时间。p

例如,如果我说用 5 个线程重复 50 次,那么 5 个线程中的每一个都应该单独重复 10 次。

因此,为此,我需要使用多个线程运行以下 for 循环。由于我是多线程的新手,所以我想到了使用 P 线程。我可以知道这样做的语法吗?

int* identify(int fd, int name_space, void *ctrl, int cns, int rc)
{
    int *err,count=0;
    struct nvme_admin_cmd cmd;
    static const char *perrstr;
    memset(&cmd, 0, sizeof(cmd));
    cmd.opcode = nvme_admin_identify;
    cmd.nsid = name_space;
    cmd.addr = (__u64)(uintptr_t)ctrl;
    cmd.data_len = 4096;
    cmd.cdw10 = cns;
    for(count=0; count<rc; count++){
        *(err+count) = ioctl(fd, NVME_IOCTL_ADMIN_CMD, &cmd);
    }
    return err;
}
4

0 回答 0