gpt4 book ai didi

c++ - 如何在cpp中使用QThread使用一个对象运行同一类的两个线程?

转载 作者:行者123 更新时间:2023-11-30 03:40:35 24 4
gpt4 key购买 nike

我有一个类,其成员函数是 VideoCapture 和 VideoWrite。我想运行两个线程来并行执行这两个过程。我观察到我们每次都需要创建一个类对象来运行不同的线程。有什么办法可以避免每次都创建不同的类对象吗?

最佳答案

您不能真正在两个不同的线程中运行一个类 - 通常您将一个类实例移动到一个线程中。您最好创建两个单独的类,一个读取器/捕获类和一个写入器类,然后将每个类放在它们自己的线程中……这非常简单有效。

如果你真的想把类放在一起,你可以使用 QtConcurrent 来实现这一点——这取决于你的类是如何工作的。您可以在 qtconcurrent 中运行捕获/写入函数(或任何重处理器函数)以摆脱繁重的工作——而事件处理/事件循环只能在主线程(甚至是单独的线程)中完成将其完全移离主线程)。见:

run member function qith QtConcurrent

QtConcurrent

关于c++ - 如何在cpp中使用QThread使用一个对象运行同一类的两个线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37897770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com