再谈线程池的实现

  • 来源: 互联网 作者: rocket   2008-03-18/13:27

  •  

    再谈线程池的实现
    前言。
    在win2K以后的操作系统里有几个线程池的api : QueueUserWorkItem, WorkItemFunc, 等(可参阅msdn)。

    这里我不是介绍他们的用法。
    我现在一个工程当中,需要用到线程池,主要是效率的考虑。

    在很早之前我其实已经实现过线程池,只是那时,没有整理,另一方面是,工程一般都很大,不适合为大家作为范例来学习。

    我这里实现了一个线程池,主要是我也想把自己的一些思想稳定下来.
    原理:
    如图
    关键技术
    多线程,事件/同步,回调机制。
    使用细节.

    BOOL CThreadDlg::OnInitDialog()
    {
    CDialog::OnInitDialog();


    m_threadpool.SetPF(Test);
    m_threadpool.Run();
    return TRUE; // return TRUE unless you set the focus to a control
    }


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多