【发布时间】:2012-10-15 06:20:10
【问题描述】:
所以我正在查看我的下一个学校作业,我很困惑。我想我会向专家寻求一些指导。我严重缺乏同步方面的知识,而且我对它所指的“mcopyfile”任务也没有那么热情。可怕的可能是一个好词。如果我能就如何解决这个问题获得一些指导,将不胜感激。不是找人做我的任务,只需要有人指出我正确的方向。婴儿步骤。
基于多线程的文件复制工具 (mcopyfile) 你在 Lab 2 中创建的,现在请使用 worker 使用固定的池(生产者-消费者模型)实现 处理负载的线程数(无论在 要复制的目录)。您的程序应创建 1 个文件副本生成器 线程和多个文件复制消费者线程(这个数字取 从命令行参数)。文件复制生产者线程将 在缓冲区中生成(源和目标)文件描述符列表 有界大小的结构。每次生产者访问缓冲区时,它都会写入 一个(源、目标)文件条目(每次访问)。和所有文件副本 消费者线程将从这个缓冲区中读取,执行实际的文件 复制任务,并删除相应的文件条目(每个消费者 每次将消耗一个条目)。生产者和消费者 线程将向标准输出写入一条消息,给出文件名 和完成状态(例如,对于生产者:“完成投放 缓冲区中的file1”,对于消费者:“正在完成将file1复制到...”)。
【问题讨论】:
标签: c++ synchronization file-copying consumer producer