【问题标题】:Is there much overhead with AfxBeginThread?AfxBeginThread 有很多开销吗?
【发布时间】:2012-01-05 07:36:36
【问题描述】:

当 AfxBeginThread 做这件事时有多少开销?

我有一个令人尴尬的并行项目,我想用 AfxBeginThread 分批启动 4-15 个线程,等待每个线程自然完成,比较结果,然后重复无数次。

让我担心的是每个工作线程要做的工作远少于一秒,可能是 1/50 秒或更短,坦率地说,我不知道有多少个周期进入 voodoo AfxBeginThread确实注册新线程,设置,进入,函数结束时自然退出。

有什么想法吗?

【问题讨论】:

    标签: c++ multithreading mfc concurrency


    【解决方案1】:

    作为一般原则,您可能希望避免始终启动和停止线程。创建工作线程一次,然后向它们提供无数次数据。那么您就不必担心线程创建和销毁开销(虽然很小但很重要)。

    【讨论】:

    • 顺便说一句,这几乎就是 thread pool 所做的事情。
    • 感谢您的回复,我正在检查线程池方法!
    猜你喜欢
    • 2010-11-09
    • 2010-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 2015-04-28
    • 2011-03-29
    • 1970-01-01
    相关资源
    最近更新 更多