当前位置: 首页 > news >正文

网站建设哪家好 北京西西美人美体

网站建设哪家好 北京,西西美人美体,安装wordpress导入工具,苏州手机网站建设公司线程池 定义:简单来说,就是存放多个线程的池子。当创建线程池时,就给池中存放一些线程,如果有任务要执行,就从池中取出一个线程执行任务,依次类推;当所有线程都在执行任务时,其他任务…

线程池

        定义:简单来说,就是存放多个线程的池子。当创建线程池时,就给池中存放一些线程,如果有任务要执行,就从池中取出一个线程执行任务,依次类推;当所有线程都在执行任务时,其他任务暂时等待,当线程执行完任务后不会被回收,而是回到线程池中等待或继续执行其他的任务;这样同一个线程就被反复利用,从而减少创建线程,销毁线程耗时耗费资源的问题。

1.套接字+多线程

思想: 将接受客户端连接与和客户端进行数据通讯的操作分别放置在不同的线程中;

            

实现:用主线程实现接受客户端连接请求。 一旦一个客户端连接成功,则创建一个线程,在线程中实现与客户端进行数据通讯。    

                           

优缺点: 1. 思想简单,实现比较容易                         

                2. 效率低下,因服务器要频繁的创建和销毁线程。           

2.线程池                 

思想:在客户端尚未连接前,先创建一定数量的线程,并让线程处于睡眠状态。当客户端连接后,投递一个任务(就是和客户端进行数据通讯)到任务队列,并唤醒线程,线程竞争执行任务队列中的任务,当线程处理完当前任务,并不销毁(退出),而是接着处理下一次任务。

 实现:               

1.创建线程池:

typedef struct _task
{
void* (*taskfun)(void*);
void              *argp;
struct _task      *next;
}task_t;typedef struct
{
int                   thread_num;      //线程池中开启的线程数
int                   queue_num;       //任务队列当前的任务数
int                   queue_max_size;  //任务队列的容量
pthread_mutex_t       mutex;          //互斥锁
pthread_cond_t        queue_empty;    //用于阻塞线程的条件变量
pthread_cond_t        queue_full;     //用于阻塞任务添加模块的条件变量
pthread_t             *id;           //用于存储线程ID 
task_t                *head;          //任务队列的队头指针
task_t                *tail;          //任务队列的队尾指针
}threadpool_t;

2.初始化程池:                     

int  threadpool_init(threadpool_t *pool, int tnum,int qsize);

              

3.线程函数                       

功能:访问任务队列,取出每一个任务结点,执行结点函数。

               

4.任务队列                       

功能:用于协调线程与任务添加模块,也就是说任务添加模块向任务队列投递任务结点,线程取出任务结点执行。

               

5.任务添加模块                                            

功能:产生任务结点,并将任务结点投递到任务队列。               

优缺点: 1. 效率相对来讲比较高                           

                2. 实现比较复杂。

http://www.yayakq.cn/news/722629/

相关文章:

  • seo网站建设公司哪家好小程序商城开发流程
  • 小程序推广费用一个月需要多少钱宁波专业seo外包
  • 西宁做网站君博相约微信网站制作
  • 网站浏览历史记录恢复方法是什么阿坝州建设局网站刘志彬
  • 网站里的地图定位怎么做的淘宝关键词优化技巧教程
  • 网站设计页面织梦免费网站模块下载
  • 网站建设公司汕头的顺德网页制作公司
  • 汕头市网站建设公司用什么网站做海报 知乎
  • wordpress建站 域名免费发布推广信息的软件
  • 外贸快车做网站怎么样学校网站asp
  • 怎样做1个网站住房城乡建设网站
  • 做网站必须花钱吗品牌建设专项规划
  • 南京自助建站网站上海网站建设置作
  • 山东做网站三五常州高端模板建站
  • 哈尔滨网站建设口碑好德国的网站后缀
  • 南京电商网站设计公司江夏区做网站
  • 做网站需要几个岗位instagram wordpress
  • 龙岩网站设计一般要多久南宁模板开发建站
  • dedecms免费网站模板域名的价格
  • 广州建网站开发seo型企业网站网站前台维护
  • 在网站上做播放视频广告是否违法新浪网站开发语言
  • 网站的ip地址是什么ui培训班学费多少钱
  • 谁有人和兽做的网站?企业建站官网
  • 富阳建设局网站电话wordpress 段落间距
  • 西安制作网站需要多少钱万网个人网站备案查询
  • 网站营销做的好的律师网页页面设计尺寸
  • 网站弹出广告gif出处备案网站多长时间
  • 口腔医院网站源码宾馆酒店网站建设方案
  • 网站海外seo注册安全工程师官网入口
  • 网站二次备案网站ui设计要点