妈妈做的脆皮鱼 2022-05-31 09:42 采纳率: 0%
浏览 77
已结题

c++多线程问题,设计模式中的生产者消费者相关。

问题遇到的现象和发生背景

img


题相关代码,请勿粘贴截图

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • 吕布辕门 后端领域新星创作者 2022-05-31 09:59
    关注

    有问题可以问哈,一共建3个文件,如下:

    main.cpp文件

    #include <iostream>
    #include <sstream>
    #include <fstream>
    #include <string>
    #include <thread>
     
    #include "cmdLine.h"
    #include "mutlithread.h"
     
    int main(int argc, char *argv[])
    {
        std::string inputPath = "/media/add7/E/testData/testThreads/";
        std::vector<std::string> fileNameList;
        for(std::size_t i = 0; i < 20; ++i)
        {
            std::stringstream ss;
            ss << i;
            std::string s;
            ss >> s;
            std::string tempPath = inputPath + "/" + s + ".txt";
            fileNameList.push_back(tempPath);
        }
     
        MutliThread myThread;
        myThread.initialization("/media/add7/E/testData/testThreads/out/");
     
     
        while(true)
        {
            if(MutliThread::writeFinish && MutliThread::showFinish)
                break;
     
            std::thread th1(MutliThread::readFile, &fileNameList, &myThread);
            std::thread th2(MutliThread::showFile);
            std::thread th3(MutliThread::writeFile, &myThread);
     
            std::cout << "join th1" << std::endl;
            th1.join();
            std::cout << "join th2" << std::endl;
            th2.join();
            std::cout << "join th3" << std::endl;
            th3.join();
        }
     
        std::cout << "threads exit !" << std::endl;
     
     
        return 1;
    }
     
    
    
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月7日
  • 创建了问题 5月31日

悬赏问题

  • ¥15 在虚拟机中安装flash code
  • ¥15 单片机stm32f10x编写光敏电阻调节3.3伏大功率灯亮度(光强越大灯越暗,白天正常光强灯不亮,使用ADC,PWM等模块)望各位找一下错误或者提供一个可实现功能的代码
  • ¥20 verilog状态机方法流水灯
  • ¥15 pandas代码实现不了意图
  • ¥15 GD32H7 从存储器到外设SPI传输数据无法重复启用DMA
  • ¥25 LT码在高斯信道下的误码率仿真
  • ¥45 渲染完成之后将物体的材质贴图改变,自动化进行这个操作
  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写