`

ThreadPool2

 
阅读更多

添加了新的功能,可以设置调用线程为阻塞模式。可以关闭线程。

 

缺点:1. 队列中还有work,也会直接关闭线程的时候。

         2. 直接创建线程,线程数不可控

 

疑问:enum是不是不可以synchronized的,有待测试。

 

改进:work队列可以用ArrayBlockingQueue 来做  参考:http://blog.csdn.net/linshutao/article/details/6753521

分享到:
评论

相关推荐

    10393799ThreadPool2_java_DEMO_

    标题 "10393799ThreadPool2_java_DEMO_" 暗示这是一个关于Java线程池实现的示例代码。线程池是多线程编程中的一个重要概念,它提高了系统资源的利用率,减少了线程创建和销毁的开销。在Java中,我们主要通过`java....

    ThreadPool

    根据提供的压缩包子文件名`ThreadPool1.rar`和`ThreadPool2.rar`,我们可以推测其中可能包含了作者实现线程池的源代码和相关测试案例。通过查看这些文件,可以深入理解作者如何实现了线程池的各个部分,以及他是如何...

    threadpool

    2. **线程创建与销毁**:在初始化线程池时,会预创建一定数量的线程。这些线程进入就绪状态,等待任务分配。当线程完成任务后,不会被销毁,而是回到线程池等待新的任务。 3. **任务提交与调度**:用户通过接口向...

    Pythonpython threadpool python多线程 Python语言基础

    【Python】python threadpool python多线程 Python语言基础 文件清单 └── threadpool-1.2.7 ├── CHANGELOG.txt ├── doc │ ├── api │ │ ├── class-tree.html │ │ ├── epydoc.css │ │...

    threadPool的实现代码

    threadPool的实现代码

    ThreadPool 线程池管理单元

    ThreadPool 线程池管理单元 带调用例子

    Boost threadpool优先级实例

    2. **创建线程池**:然后,我们可以创建一个线程池对象,比如`boost::threadpool::pool pool(num_threads)`,其中`num_threads`是线程池中线程的数量。 3. **定义任务**:任务可以是任何可调用的对象,如函数、函数...

    python threadpool

    2. **创建线程池**:使用`ThreadPool`类创建一个线程池实例,例如`pool = threadpool.ThreadPool(pool_size)`,其中`pool_size`是线程池中线程的数量。 3. **创建请求**:`threadpool`使用`threadpool.makeRequests...

    threadpool.tar.gz

    2. **工作线程**:一组预先创建的线程,它们持续检查任务队列是否有新任务。如果有,它们就从队列中取出任务并执行。 3. **同步机制**:确保线程安全,如互斥量(`std::mutex`)、条件变量(`std::condition_...

    threadpool_src.zip

    2. ThreadPool.cpp:这是线程池类的实现文件,通常会包含线程池的创建、销毁、任务提交和线程管理等功能。 3. ThreadPoolAppDlg.cpp 和 ThreadPoolAppDlg.h:这可能是应用程序的对话框类实现和头文件,可能用于用户...

    C# ThreadPool 多线程 代码示例

    2. **并发执行**:多个任务可以同时在线程池中执行,提高了程序的并行处理能力。 3. **优先级调度**:虽然默认情况下`ThreadPool`没有提供优先级控制,但可以通过自定义`ThreadPoolBoundHandle`实现优先级调度。 ...

    threadpool_informationmcb_threadpool_c++threadpool_

    2. **工作线程(Worker Threads)**:这些是预先创建并保持活动状态的线程,它们从工作队列中取出任务并执行。线程数量通常是固定的,以平衡资源消耗与任务处理速度。 3. **任务调度器(Task Scheduler)**:负责将...

    Tomat研究之ThreadPool

    2. **`ControlRunnable`**:实现具体的操作逻辑,是线程池中的工作单元。它包含`run()`、`runIt()`、`stop()`、`kill()`和`terminate()`等方法,用于控制线程的运行和停止。 3. **`ThreadPool`**:核心线程池类,...

    threadpool.rar

    threadpool线程池学习

    IOCP完成端口+多线程池.zip

    - ThreadPool2.clw、ThreadPool.cpp、ThreadPool2.cpp、ThreadPool2.dsp、ThreadPool2.dsw:这些可能是线程池的实现代码,包含了类定义、函数实现以及项目配置文件。 - StdAfx.cpp、StdAfx.h:通常用于包含预编译...

    C++11 线程池 ThreadPool

    线程池(ThreadPool)是一种管理线程资源的有效方式,它在现代并发编程中扮演着至关重要的角色。线程池允许程序预先创建一组线程,而不是每次需要时都创建新的线程,这样可以减少线程的创建和销毁开销,提高系统效率...

    ThreadPool-master.zip

    2. **线程同步**:为了保证线程安全,我们需要使用互斥量(`std::mutex`)、条件变量(`std::condition_variable`)等同步原语,确保线程间正确通信和数据一致性。 3. **任务队列**:通常使用`std::queue`或者...

Global site tag (gtag.js) - Google Analytics