QQ网名大全

Linux c如何创建线程池

linux c 并没有自带的线程池,纯C的线程池很少

1:使用glib的线程池,gthreadpool,这个是linux C 下面的一个线程池实现,可以用于生产环境。
2:自己设计线程池,但是设计一个工业强度的线程池是一件非常复杂的事情,尤其用C来实现。一般思路就是建立一个线程池管理函数,一个线程函数并创建一组线程,一个全局的线程状态数组,线程管理函数通过全局线程状态数组来分派任务,线程函数更改自己的线程状态来上报自己的运行情况,实现起来还是相当复杂的。
建议不要重复造轮子,直接使用现有的线程池实现,glib是很好的选择。
佚名
2024-05-15 07:30:45
最佳回答
类似问题(10)
  • 佚名
    2024-05-15 18:54:45

    Linux C下如何创建一个线程?

    pthread_create(&id,NULL,move,stack);//若stack为字符数组而非字符指针时,传入时不需要强转调用时:void* m...

  • 佚名
    2024-05-15 14:04:43

    linux c 什么叫轻量级线程

    轻量级线程(LWP)是一种由内核支持的用户线程。它是基于内核线程的高级抽象,因此只有先支持内核线程,才能有LWP。每一个进程有一个或多个LWPs,每个LWP由一...

  • 佚名
    2024-05-15 20:51:24

    Linux的C编程线程的问题

    这么多内容,没时间写,给你点资料,自己去看了写吧:http:///developerworks/cn/linux/thread/posix_threadapi/...

  • 佚名
    2024-05-15 15:48:45

    线程池的C++11版本实现问题

    因为你没有贴上全部代码,也很难看出来看一下这个C++11的thread pool怎么样?#ifndef THREAD_POOL_H    #define THR...

  • 佚名
    2024-05-15 11:29:24

    c语言创建线程的时候实质上做了什么?

    #include#include#include#include#include#define MAX 10pthread_t thread[2];pthrea...

  • 佚名
    2024-05-15 15:59:48

    为什么无法创建线程

    因为新建线程的环境与主线程不同,这种新线程的内存和资源是与主线程的内存资源是隔离的,通常在新线程里要调用资源,都是通过主线程创建新线程过程时传递过来的参数进行类...

  • 佚名
    2024-05-15 08:00:00

    C#如何处理多个线程同时调用一个方法

    要同一时间使方法只受到一个线程访问只需加线程锁,例如:void f(){lock(this){// your code here}}但是你说需要排队的话那是另外...

  • 佚名
    2024-05-15 08:00:00

    linux如何查看一个进程下有哪些线程 求具体例子

    对于Linux,其实他是不存在线程这一说的,只有进程,如果非要说线程的话 ,你可以pstree -c|grep 你想要的进程的线程比如nginx的:ps -ef...

  • 佚名
    2024-05-15 08:00:00

    linux和windows多线程的异同

    linux多线程及线程同步和windows的多线程之间的异同并不是所有的程序都必须采用多线程,有时候采用多线程性能还不如单线程。采用多线程的好处如下:(1)多线...

  • 佚名
    2024-05-15 08:00:00

    C#如何创建和控制多线程?

    一样的,比如Thread[] threads=new Thread[10];//公共变量数组//循环的时候就可以比如这样for(int i=0;i<thr...