Skip to content

Adam-QLUT/cpp_mutex_homework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

C++多线程编程作业

练习题:

编写一个C++程序,模拟一个发布者-订阅者模型。在这个模型中,有一个发布者线程和多个订阅者线程。发布者线程生成数据并将其发布,订阅者线程订阅数据并进行处理。

参考流程:

  • 发布者线程不断生成数据,每次生成一个1到100的随机整数,并将其发布。
  • 订阅者线程订阅数据,如果订阅的数据是偶数,就将其打印出来。
  • 使用互斥锁保护数据,防止同时读写导致的数据竞争。
  • 使用条件变量使订阅者线程在没有新数据时等待,直到发布者线程发布新数据。

提示: 你可以使用C++11的std::thread, std::mutex, std::condition_variable来完成这个练习。


作业提交方法:

  • 第一步:创建新issue new_issue

  • 第二步:填写作业内容,格式要求如下图 Screenshot_20231124_162506

  • 第三步:提交 点击绿色Submit New issue按钮提交

About

C++多线程编程作业

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published