Browse Source

format codes to utf-8

Meco Man 4 năm trước cách đây
mục cha
commit
3b7dc74cfa
6 tập tin đã thay đổi với 249 bổ sung249 xóa
  1. 101 101
      ppool.c
  2. 13 13
      ppool.h
  3. 25 25
      ppool_errno.c
  4. 3 3
      ppool_errno.h
  5. 91 91
      ppool_queue.c
  6. 16 16
      ppool_queue.h

+ 101 - 101
ppool.c

@@ -1,130 +1,130 @@
 #include "ppool.h"
 
-//线程池执行任务函数
+//绾跨▼姹犳墽琛屼换鍔″嚱鏁�
 void ppool_run(pool_t *pool);
 
 pool_t *ppool_init(int pool_max_num)
 {
-	pool_t *pool;
-	pool_w *head;
-	int i;
-
-	pool=malloc(sizeof(pool_t));
-	if(!pool)
-	{
-		ppool_errno=PE_POOL_NO_MEM;
-		return NULL;
-	}
-
-	//创建任务队列
-	head=ppool_queue_init();
-	if(!head)
-	{
-		free(pool);
-		return NULL;
-	}
-
-	pool->pool_max_num=pool_max_num;
-	pool->rel_num=0;
-	pool->head=head;
-	pool->id=malloc(sizeof(pthread_t)*pool_max_num);
-	if(!pool->id)
-	{
-		ppool_errno=PE_THREAD_NO_MEM;
-		free(head);
-		free(pool);
-
-		return NULL;
-	}
-
-	if(pthread_mutex_init(&pool->ppool_lock,NULL) != 0)
-	{
-		ppool_errno=PE_THREAD_MUTEX_ERROR;
-		free(pool->id);
-		free(head);
-		free(pool);
-
-		return NULL;
-	}
-	if(pthread_mutex_init(&PPOOL_LOCK,NULL) != 0)
-	{
-		ppool_errno=PE_THREAD_MUTEX_ERROR;
-		free(pool->id);
-		free(head);
-		pthread_mutex_destroy(&pool->ppool_lock);
-		free(pool);
-	}
-	if(pthread_cond_init(&pool->ppool_cond,NULL) != 0)
-	{
-		ppool_errno=PE_THREAD_COND_ERROR;
-		free(pool->id);
-		free(head);
-		pthread_mutex_destroy(&pool->ppool_lock);
-		free(pool);
-
-		return NULL;
-	}
-
-	//创建任务
-	for(i=0;i < pool_max_num;++i)
-	{
-		if(pthread_create(&pool->id[i],NULL,(void *)ppool_run,pool) == 0)
-			++pool->rel_num;
-
-		pthread_detach(pool->id[i]);
-	}
-
-	return pool;
+    pool_t *pool;
+    pool_w *head;
+    int i;
+
+    pool=malloc(sizeof(pool_t));
+    if(!pool)
+    {
+        ppool_errno=PE_POOL_NO_MEM;
+        return NULL;
+    }
+
+    //鍒涘缓浠诲姟闃熷垪
+    head=ppool_queue_init();
+    if(!head)
+    {
+        free(pool);
+        return NULL;
+    }
+
+    pool->pool_max_num=pool_max_num;
+    pool->rel_num=0;
+    pool->head=head;
+    pool->id=malloc(sizeof(pthread_t)*pool_max_num);
+    if(!pool->id)
+    {
+        ppool_errno=PE_THREAD_NO_MEM;
+        free(head);
+        free(pool);
+
+        return NULL;
+    }
+
+    if(pthread_mutex_init(&pool->ppool_lock,NULL) != 0)
+    {
+        ppool_errno=PE_THREAD_MUTEX_ERROR;
+        free(pool->id);
+        free(head);
+        free(pool);
+
+        return NULL;
+    }
+    if(pthread_mutex_init(&PPOOL_LOCK,NULL) != 0)
+    {
+        ppool_errno=PE_THREAD_MUTEX_ERROR;
+        free(pool->id);
+        free(head);
+        pthread_mutex_destroy(&pool->ppool_lock);
+        free(pool);
+    }
+    if(pthread_cond_init(&pool->ppool_cond,NULL) != 0)
+    {
+        ppool_errno=PE_THREAD_COND_ERROR;
+        free(pool->id);
+        free(head);
+        pthread_mutex_destroy(&pool->ppool_lock);
+        free(pool);
+
+        return NULL;
+    }
+
+    //鍒涘缓浠诲姟
+    for(i=0;i < pool_max_num;++i)
+    {
+        if(pthread_create(&pool->id[i],NULL,(void *)ppool_run,pool) == 0)
+            ++pool->rel_num;
+
+        pthread_detach(pool->id[i]);
+    }
+
+    return pool;
 }
 
 pbool ppool_add(pool_t *pool,pool_task *task)
 {
-	pool_node *node;
+    pool_node *node;
 
-	node=ppool_queue_new(task->task,task->arg,task->priority);
-	if(!node)
-		return PFALSE;
+    node=ppool_queue_new(task->task,task->arg,task->priority);
+    if(!node)
+        return PFALSE;
 
-	while(pthread_mutex_lock(&pool->ppool_lock) != 0);
-	ppool_queue_add(pool->head,node);
-	while(pthread_cond_broadcast(&pool->ppool_cond) != 0);
-	while(pthread_mutex_unlock(&pool->ppool_lock) != 0);
+    while(pthread_mutex_lock(&pool->ppool_lock) != 0);
+    ppool_queue_add(pool->head,node);
+    while(pthread_cond_broadcast(&pool->ppool_cond) != 0);
+    while(pthread_mutex_unlock(&pool->ppool_lock) != 0);
 
-	return PTRUE;
+    return PTRUE;
 }
 
 void ppool_destroy(pool_t *pool)
 {
-	int i;
+    int i;
 
-	ppool_queue_destroy(pool->head);
+    ppool_queue_destroy(pool->head);
 
-	for(i=0;i < pool->pool_max_num;++i)
-		pthread_cancel(pool->id[i]);
-	free(pool->id);
+    for(i=0;i < pool->pool_max_num;++i)
+        pthread_cancel(pool->id[i]);
+    free(pool->id);
 
-	pthread_mutex_destroy(&pool->ppool_lock);
-	pthread_mutex_destroy(&PPOOL_LOCK);
-	pthread_cond_destroy(&pool->ppool_cond);
+    pthread_mutex_destroy(&pool->ppool_lock);
+    pthread_mutex_destroy(&PPOOL_LOCK);
+    pthread_cond_destroy(&pool->ppool_cond);
 
-	free(pool);
+    free(pool);
 }
 
 void ppool_run(pool_t *pool)
 {
-	pool_node *task;
+    pool_node *task;
 
-	while(1)
-	{
-		while(pthread_mutex_lock(&pool->ppool_lock) != 0);
-		while(pool->head->len <= 0)
-			pthread_cond_wait(&pool->ppool_cond,&pool->ppool_lock);
-		task=ppool_queue_get_task(pool->head);
-		while(pthread_mutex_unlock(&pool->ppool_lock) != 0);
+    while(1)
+    {
+        while(pthread_mutex_lock(&pool->ppool_lock) != 0);
+        while(pool->head->len <= 0)
+            pthread_cond_wait(&pool->ppool_cond,&pool->ppool_lock);
+        task=ppool_queue_get_task(pool->head);
+        while(pthread_mutex_unlock(&pool->ppool_lock) != 0);
 
-		if(task == NULL) continue;
-		task->task(task->arg);
+        if(task == NULL) continue;
+        task->task(task->arg);
 
-		free(task);
-	}
+        free(task);
+    }
 }

+ 13 - 13
ppool.h

@@ -16,30 +16,30 @@ pthread_mutex_t PPOOL_LOCK;
 
 typedef struct
 {
-	int pool_max_num; //线程池最大线程数量
-	int rel_num; //线程池中实例线程数
-	pool_w *head; //线程头
-	pthread_t *id; //线程id
+    int pool_max_num; //绾跨▼姹犳渶澶х嚎绋嬫暟閲�
+    int rel_num; //绾跨▼姹犱腑瀹炰緥绾跨▼鏁�
+    pool_w *head; //绾跨▼澶�
+    pthread_t *id; //绾跨▼id
 
-	pthread_mutex_t ppool_lock;
-	pthread_cond_t ppool_cond;
+    pthread_mutex_t ppool_lock;
+    pthread_cond_t ppool_cond;
 }pool_t;
 
-//任务数据结构
+//浠诲姟鏁版嵁缁撴瀯
 typedef struct
 {
-	int priority; //优先级
-	ppool_work task; //任务
-	void *arg; //参数
+    int priority; //浼樺厛绾�
+    ppool_work task; //浠诲姟
+    void *arg; //鍙傛暟
 }pool_task;
 
-//初始化一个线程池
+//鍒濆�鍖栦竴涓�嚎绋嬫睜
 pool_t *ppool_init(int pool_max_num);
 
-//向线程池中添加一个任务
+//鍚戠嚎绋嬫睜涓�坊鍔犱竴涓�换鍔�
 pbool ppool_add(pool_t *pool,pool_task *task);
 
-//销毁一个线程池
+//閿€姣佷竴涓�嚎绋嬫睜
 void ppool_destroy(pool_t *pool);
 
 #endif

+ 25 - 25
ppool_errno.c

@@ -4,33 +4,33 @@ int ppool_errno=0;
 
 void ppool_error(const char *msg)
 {
-	if(!msg)
-		printf("%s\n",ppool_strerr(ppool_errno));
-	else
-		printf("%s : %s\n",ppool_strerr(ppool_errno));
+    if(!msg)
+        printf("%s\n",ppool_strerr(ppool_errno));
+    else
+        printf("%s : %s\n",ppool_strerr(ppool_errno));
 }
 
 char *ppool_strerr(int errno)
 {
-	switch(errno)
-	{
-		case 0:
-			return "成功!";
-		case -1:
-			return "无法为线程池开辟空间,创建线程池失败!";
-		case -2:
-			return "无法为此数量的线程分配足够的内存!";
-		case -3:
-			return "pthread初始化互斥锁失败,请使用ppool_error查看更多信息!";
-		case -4:
-			return "pthread初始化条件变量失败,请使用ppool_error查看更多信息!";
-		case -5:
-			return "无法为任务队列开辟空间!";
-		case -6:
-			return "错误的优先级!";
-		case -7:
-			return "无法为队列丙创建一个结点,开辟内存出错!";
-		default:
-			return "未知错误!";
-	}
+    switch(errno)
+    {
+        case 0:
+            return "鎴愬姛!";
+        case -1:
+            return "鏃犳硶涓虹嚎绋嬫睜寮€杈熺┖闂达紝鍒涘缓绾跨▼姹犲け璐�!";
+        case -2:
+            return "鏃犳硶涓烘�鏁伴噺鐨勭嚎绋嬪垎閰嶈冻澶熺殑鍐呭瓨!";
+        case -3:
+            return "pthread鍒濆�鍖栦簰鏂ラ攣澶辫触锛岃�浣跨敤ppool_error鏌ョ湅鏇村�淇℃伅!";
+        case -4:
+            return "pthread鍒濆�鍖栨潯浠跺彉閲忓け璐ワ紝璇蜂娇鐢╬pool_error鏌ョ湅鏇村�淇℃伅!";
+        case -5:
+            return "鏃犳硶涓轰换鍔¢槦鍒楀紑杈熺┖闂�!";
+        case -6:
+            return "閿欒�鐨勪紭鍏堢骇!";
+        case -7:
+            return "鏃犳硶涓洪槦鍒椾笝鍒涘缓涓€涓�粨鐐癸紝寮€杈熷唴瀛樺嚭閿�!";
+        default:
+            return "鏈�煡閿欒�!";
+    }
 }

+ 3 - 3
ppool_errno.h

@@ -4,7 +4,7 @@
 #include <stdio.h>
 #include <string.h>
 
-extern int ppool_errno; //错误代码变量
+extern int ppool_errno; //閿欒�浠g爜鍙橀噺
 
 #define PE_OK 0
 #define PE_POOL_NO_MEM -1
@@ -15,10 +15,10 @@ extern int ppool_errno; //
 #define PE_PRIORITY_ERROR -6
 #define PE_QUEUE_NODE_NO_MEM -7
 
-//打印错误信息
+//鎵撳嵃閿欒�淇℃伅
 void ppool_error(const char *msg);
 
-//根据错误代码代码打印错误信息
+//鏍规嵁閿欒�浠g爜浠g爜鎵撳嵃閿欒�淇℃伅
 char *ppool_strerr(int errno);
 
 #endif

+ 91 - 91
ppool_queue.c

@@ -1,137 +1,137 @@
 #include "ppool_queue.h"
 
 int ppool_queue_get_insert_pos(pool_node *head,int priority);
-//²éѯ²åÈëµÄλÖÃ
+//查询�入的�置
 
 pool_w *ppool_queue_init(void)
 {
-	pool_w *head;
+    pool_w *head;
 
-	head=malloc(sizeof(pool_w));
-	if(!head)
-	{
-		ppool_errno=PE_QUEUE_NO_MEM;
-		return NULL;
-	}
+    head=malloc(sizeof(pool_w));
+    if(!head)
+    {
+        ppool_errno=PE_QUEUE_NO_MEM;
+        return NULL;
+    }
 
-	head->len=0;
-	head->head=NULL;
+    head->len=0;
+    head->head=NULL;
 
-	return head;
+    return head;
 }
 
 pool_node *ppool_queue_new(ppool_work task,void *arg,int priority)
 {
-	pool_node *node;
-
-	if(priority < 0)
-	{
-		ppool_errno=PE_PRIORITY_ERROR;
-		return NULL;
-	}
-
-	node=malloc(sizeof(pool_node));
-	if(node == NULL)
-	{
-		ppool_errno=PE_QUEUE_NODE_NO_MEM;
-		return NULL;
-	}
-
-	node->task=task;
-	node->arg=arg;
-	node->priority=priority;
-	node->next=NULL;
-
-	return node;
+    pool_node *node;
+
+    if(priority < 0)
+    {
+        ppool_errno=PE_PRIORITY_ERROR;
+        return NULL;
+    }
+
+    node=malloc(sizeof(pool_node));
+    if(node == NULL)
+    {
+        ppool_errno=PE_QUEUE_NODE_NO_MEM;
+        return NULL;
+    }
+
+    node->task=task;
+    node->arg=arg;
+    node->priority=priority;
+    node->next=NULL;
+
+    return node;
 }
 
 void ppool_queue_add(pool_w *head,pool_node *node)
 {
-	int pos;
-	int i;
-	pool_node *h=head->head;
-
-	pos=ppool_queue_get_insert_pos(h,node->priority);
-	if(pos == -1)
-	{
-		head->head=node;
-		++head->len;
-
-		return;
-	}
-	else if(pos == 0)
-	{
-		node->next=h;
-		head->head=node;
-		++head->len;
-
-		return;
-	}
-
-	for(i=0;i < pos-1;++i)
-		h=h->next;
-
-	node->next=h->next;
-	h->next=node;
-	++head->len;
+    int pos;
+    int i;
+    pool_node *h=head->head;
+
+    pos=ppool_queue_get_insert_pos(h,node->priority);
+    if(pos == -1)
+    {
+        head->head=node;
+        ++head->len;
+
+        return;
+    }
+    else if(pos == 0)
+    {
+        node->next=h;
+        head->head=node;
+        ++head->len;
+
+        return;
+    }
+
+    for(i=0;i < pos-1;++i)
+        h=h->next;
+
+    node->next=h->next;
+    h->next=node;
+    ++head->len;
 }
 
 pool_node *ppool_queue_get_task(pool_w *head)
 {
-	pool_node *task;
+    pool_node *task;
 
-	if(head->head == NULL)
-		return NULL;
+    if(head->head == NULL)
+        return NULL;
 
-	task=head->head;
-	head->head=head->head->next;
-	--head->len;
+    task=head->head;
+    head->head=head->head->next;
+    --head->len;
 
-	return task;
+    return task;
 }
 
 void ppool_queue_cleanup(pool_w *head)
 {
-	pool_node *h=head->head;
-	pool_node *temp;
+    pool_node *h=head->head;
+    pool_node *temp;
 
-	while(h)
-	{
-		temp=h;
-		h=h->next;
+    while(h)
+    {
+        temp=h;
+        h=h->next;
 
-		free(temp);
-	}
+        free(temp);
+    }
 
-	head->len=0;
-	head->head=NULL;
+    head->len=0;
+    head->head=NULL;
 }
 
 void ppool_queue_destroy(pool_w *head)
 {
-	pool_node *h=head->head;
-	pool_node *temp;
+    pool_node *h=head->head;
+    pool_node *temp;
 
-	while(h)
-	{
-		temp=h;
-		h=h->next;
+    while(h)
+    {
+        temp=h;
+        h=h->next;
 
-		free(temp);
-	}
+        free(temp);
+    }
 
-	free(head);
+    free(head);
 }
 
 int ppool_queue_get_insert_pos(pool_node *head,int priority)
 {
-	int pos;
+    int pos;
 
-	if(head == NULL)
-		return -1;
+    if(head == NULL)
+        return -1;
 
-	for(pos=0;head && priority >= head->priority;++pos)
-		head=head->next;
+    for(pos=0;head && priority >= head->priority;++pos)
+        head=head->next;
 
-	return pos;
+    return pos;
 }

+ 16 - 16
ppool_queue.h

@@ -10,40 +10,40 @@ typedef void (*ppool_work)(void *);
 
 typedef struct ppool_node
 {
-	int priority; //ÓÅÏȼ¶
-	ppool_work task; //ÈÎÎñ
-	void *arg; //²ÎÊý
+    int priority; //优先级
+    ppool_work task; //任务
+    void *arg; //�数
 
-	struct ppool_node *next;
+    struct ppool_node *next;
 }pool_node;
 
-//ÈÎÎñÁбíÍ·Ö¸Õë
+//任务列表头指针
 typedef struct
 {
-	int len; //ÈÎÎñÊýÁ¿
-	pool_node *head; //ÁбíÍ·Ö¸Õë
+    int len; //任务数�
+    pool_node *head; //列表头指针
 }pool_w;
 
 pool_w *ppool_queue_init(void);
-//³õʼ»¯Ò»¸öÈÎÎñÁбí
+//�始化一个任务列表
 
 pool_node *ppool_queue_new(ppool_work task,void *arg,int priority);
-/* ´´½¨Ò»¸ö½Úµã
- * taskΪÐÂÈÎÎñ
- * argΪÈÎÎñ²ÎÊý
- * priorityΪ¸ÃÈÎÎñÓÅÏȼ¶
+/* 创建一个节点
+ * task为新任务
+ * arg为任务�数
+ * priority为该任务优先级
  */
 
 void ppool_queue_add(pool_w *head,pool_node *node);
-// Ìí¼ÓÒ»¸öÈÎÎñ
+// 添加一个任务
 
 pool_node *ppool_queue_get_task(pool_w *head);
-//»ñȡһ¸öÈÎÎñ
+//获�一个任务
 
 void ppool_queue_cleanup(pool_w *head);
-//ÇåÀíÈÎÎñÁбí
+//清�任务列表
 
 void ppool_queue_destroy(pool_w *head);
-//Ïú»ÙÈÎÎñÁбí
+//销�任务列表
 
 #endif