关于c++:Folly库代码赏析7Executor

Folly 的余下内容分为

    • [ ] synchronization
    • [ ] memory
    • [ ] logging
    • [ ] io
    • [ ] gen
    • [ ] fibers
    • [ ] executors
    • [ ] concurrency
classDiagram
    Executor
    Executor <|-- IOExecutor
    Executor <|-- ThreadPoolExecutor
    IOExecutor <|-- IOThreadPoolExecutor
    ThreadPoolExecutor <|--    IOThreadPoolExecutor
    ThreadPoolExecutor <|-- CPUThreadPoolExecutor
    Executor <|-- DrivableExecutor
    Executor <|-- ManualExecutor

Executor

KeepAlive是对Executor的平安援用,Executor析构时会join所有KeepAlive对象。

ThreadExecutor

对于每个task启动一个线程执行,通过channel告诉工作增加、删除、完结。golang中的select channel 用法。

ThreadPoolExecutor

IO/CPUThreadPoolExecutor的基类,提供了统计性能等通用信息。

IOThreadPoolExecutor

提供多个ioThread,每个ioThread容许event_base loop

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理