在c ++中使用管道的线程和同步[关闭]

Posted

技术标签:

【中文标题】在c ++中使用管道的线程和同步[关闭]【英文标题】:Threads and synchronisation using pipe in c++ [closed] 【发布时间】:2012-08-01 14:12:47 【问题描述】:

我有两个线程。一个线程生成一个数字,另一个线程将生成的数字平方。我需要使用管道或信号量或消息队列同步此操作。帮我解决这个问题

【问题讨论】:

您好,欢迎您。这不是提问的正确方式。你谷歌你的问题吗?你有没有尝试自己编程?很难找到一个人给你准备好的代码来解决你的问题。阅读此mattgemmell.com/2008/12/08/what-have-you-tried 祝你好运 如果您在同一个进程中有线程,您可以使用条件变量(如果它们在您的系统上可用)。 【参考方案1】:

这是一条错误的路。生成一个额外的线程并同步这两个线程将需要更多的 CPU 能力,而不仅仅是对生成器线程中的数字进行平方。

仅当每个步骤都需要足够的计算能力来证明额外线程的合理性时,实现管道才有效。

至于你的问题,我建议你阅读一下Producer-Consumer 模式。在野外有许多实现。

【讨论】:

以上是关于在c ++中使用管道的线程和同步[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

混合 C 和 C++ 的线程同步

在 C 中使用共享变量和互斥锁进行线程同步

C语言中 怎么实现双线程 或者 父子线程啊

使用信号量的进程之间的互斥[关闭]

在 c\c++ 中的线程和并发中推荐一本好的编程书籍 [关闭]

顺序并在一个线程中运行时差c ++ [关闭]