Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux C ʵÏÖÏ̳߳Ø

×î½ü×öµÄһЩ¹¤×÷ÐèÒªÓõ½Ï̳߳ؼ¼Êõ£¬Òò´Ë²Î¿¼ÁËһЩ×ÊÁϺÍÊé¼®£¬È硶0bug c/c++ÉÌÓù¤³ÌÖ®µÀ¡·¡£
Ϊ´ËÔÚlinuxƽ̨ÉÏÓô¿cдÁËÒ»¸öÏ̳߳صÄʵÏÖ¡£
ÔÚ´ËÁгöÁËÔ­´úÂë¡£
Ö÷ÒªÓõ½µÄÊý¾Ý½á¹¹ÓÐ
1.struct  thread_pool_t    // thread pool µÄʵÏÖ´úÂë
2.struct thread_pool_token_t    //ÔÚthread pool ÖÐÓõ½µÄ½á¹¹£¬Ò»¸ö¸ÃÀàÐͱäÁ¿´ú±íÒ»ÌõÏß³Ì
3.struct thread_pool_job_t     //µ±ÏßÇ°³Ì´¦Àí¸ÃÈÎÎñ½«»Øµ÷½á¹¹
Éè¼Æ˼·£º
Ö÷Ï̴߳´½¨Ï̳߳صĿØÖÆỊ̈߳¬
¹ÜÀíÏ߳̽«½øÈëÑ­»·À´×öÒÔÏÂÊÂÇ飺
1.Èç¹ûµ±Ç°¿ÕÏнø³Ì²»×ã²¢ÇÒ×ÜÏß³ÌÊýûÓдﵽÉÏÏÞ£¬½«´´½¨Ò»Ìõ¿ÕÏÐỊ̈߳¬ÖÁµÀ¿ÕÏÐÏ̴߳ﵽ3Ìõ£¨¼ûTHREAD_POOL_MIN_IDLE_SIZE£©
2.²»¶Ï¼ì²é¹¤×÷ÈÎÎñ¶ÓÁУ¬ÓÐÔò°²ÅÅÒ»Ìõ¿ÕÏÐÏ̶߳ԸÃÈÎÎñ½øÐд¦Àí
ÆÕͨÏ̱߳»¹ÜÀíÏ̴߳´½¨ºóÒ²½«½øÈëÑ­»·À´×öÒÔÏÂÊÂÇ飺
1.¼ì²éµ±Ç°assignµÄthread_pool_token_t½á¹¹µÄ״̬£¬Èç¹ûÊÇTREAD_POOL_STATE_BUSYÔòµ÷ÓÃthread_pool_token_tËù×¢²áµÄ»Øµ÷º¯ÊýÀ´´¦ÀíÈÎÎñ¡£
2.Íê³É¸ÃÈÎÎñºó¼ì²âµ±Ç°¿ÕÏнø³Ì¹»²»¹»£¬Èç¹ûÌ«¶àÔòÍ˳ö±¾Ị̈߳¬·ñÔò»á¸ÄдÔËÐÐ״̬ΪTREAD_POOL_STATE_IDLEºó¼ÌÐøÑ­»·
×¢²áÈÎÎñ£º
1.µ±Ã»ÓпÕÏÐÏ߳̿ÉÓÃʱ½«°Ñ¸ÃÈÎÎñ¼ÓÈ빤×÷ÈÎÎñ¶ÓÁУ¨Ð趨Òå_THREAD_POOL_JOB_LIST_£©£¬ÒÔ±¸½«À´ÓпÕÏÐÏß³ÌÊÇÄܹ»½øÐд¦Àí¡£
Ö÷ÒªÎļþ £º
1.thread_pool.h
 
#ifndef _LIB_DOL_THREAD_POOL_H_
#define _LIB_DOL_THREAD_POOL_H_
#include "thread_pool.def"
#include <pthread.h>
#define THREAD_POOL_MIN_SIZE      5     /* at least 5 threads, 4 job + 1 manage thread */
#define THREAD_POOL_MIN_IDLE_SIZE 3     /* at least 3 threads idle to improve the efficiency */
#define THREAD_POOL_DEFAULT_SIZE  10    /* default threads in thread pool */
#define THREAD_POOL_MAX_SIZE      100   /* max threads in thread pool */
#define TREAD_POOL_STATE_NOTRUN   0
#define TREAD_POOL_STATE_IDLE     1
#define TREAD_POOL_STATE_BUSY     2
#define TREAD_POOL_REG_OK         0
#define


Ïà¹ØÎĵµ£º

¹ØÓÚLINUXÖеÄFORKº¯Êý

Ò»Ö±ÏëдµãLINUXÖеÄFORKº¯Êý,µ«ÊÇ°É,ÎÒʵÔÚÊÇÌ«ÀÁÁË,ÔÙ¼ÓÉÏÎIJɲ»ÔõôºÃ,ËùÒԾʹÓÍøÉÏÕÒÁËƪдµÄ²»´íµÄÎÄÕÂ,¿´ÍêÖ®ºóÓ¦¸Ã¶ÔFORKº¯ÊýÓÐÒ»¶¨µÄÁ˽â~~
 
¸ø³öÈçÏÂC³ÌÐò£¬ÔÚlinuxÏÂʹÓÃgcc±àÒ룺
1 #include "stdio.h"
2 #include "sys/types.h"
3 #include "unistd.h"

5  int  main()
6 ......

Linux²Ù×÷ϵͳÄÚºËÆô¶¯²ÎÊýÏêϸ½âÎö

LinuxÄÚºËÔÚÆô¶¯µÄʱºò£¬ÄܽÓÊÕijЩÃüÁîÐÐÑ¡Ïî»òÆô¶¯Ê±²ÎÊý¡£µ±Äں˲»ÄÜʶ±ðijЩӲ¼þ½ø¶ø²»ÄÜÉèÖÃÓ²¼þ²ÎÊý»òÕßΪÁ˱ÜÃâÄں˸ü¸ÄijЩ²ÎÊýµÄÖµ£¬¿ÉÒÔͨ¹ýÕâÖÖ·½Ê½ÊÖ¶¯½«ÕâЩ²ÎÊý´«µÝ¸øÄںˡ£
Èç¹û²»Ê¹ÓÃÆô¶¯¹ÜÀíÆ÷£¬±ÈÈçÖ±½Ó´ÓBIOS»òÕß°ÑÄÚºËÎļþÓÓcp zImage /dev/fd0”µÈ·½·¨Ö±½Ó´ÓÉ豸Æô¶¯£¬¾Í²»ÄܸøÄں˴«µÝ ......

linux redhat 5.0 ÍøÒ³ÖÐÎÄ×ÖÌåÂÒÂë

1. linux ͼÐλ¯½çÃæÂÒÂ룬һ°ãÊÇÒòΪûÓа²×°ÖÐÎÄ×ÖÌåµ¼Ö£¬¿ÉÒÔÔÚÖն˲éѯÒѾ­°²×°µÄ×ÖÌå  rpm -qa | grep fonts
    Èç¹ûûÓÐfont-chinese£¬¿ÉÒÔÏÂÔØ»ò´Ó°²×°ÅÌÖÐÕÒµ½ fonts-chinese-3.02-12.el5.noarch.rpm °²×°¼´¿É¡£
2. Ô¶³ÌÁ¬½ÓÖÐÎÄÂÒÂ룺
vi /etc/sysconfig/i18n
½«ÄÚÈݸÄΪ
LANG="zh_CN. ......

c/c++Êä³öºº×Ö

1. ʹÓÃTCHARÀàÐÍ£¬¶¨ÒåÔÚtchar.hÖÐ
#include <tchar.h>
#include <stdio.h>
int main()
{
 TCHAR s[] = "Äã";
 printf("%s \n",s);
 return 0;
}
2.¹ØÓÚC++ÖÐÎÄ×Ö·ûµÄ´¦Àí
 
Ò» ÒýÈëÎÊÌâ
´úÂë wchar_t a[3]=L”Öйú”£¬±àÒëʱ³ö´í£¬³ö´íÐÅϢΪ£ºÊý×éÔ½½ç¡£µ«wchar_ ......

ÒÀÈ»CÄÚ´æ

Ò». ÔÚcÖзÖΪÕ⼸¸ö´æ´¢Çø
1.Õ» - ÓɱàÒëÆ÷×Ô¶¯·ÖÅäÊÍ·Å
2.¶Ñ - Ò»°ãÓɳÌÐòÔ±·ÖÅäÊÍ·Å£¬Èô³ÌÐòÔ±²»ÊÍ·Å£¬³ÌÐò½áÊøʱ¿ÉÄÜÓÉOS»ØÊÕ
3.È«¾ÖÇø£¨¾²Ì¬Çø£©£¬È«¾Ö±äÁ¿ºÍ¾²Ì¬±äÁ¿µÄ´æ´¢ÊÇ·ÅÔÚÒ»¿éµÄ£¬³õʼ»¯µÄÈ«¾Ö±äÁ¿ºÍ¾²Ì¬±äÁ¿ÔÚÒ»¿éÇøÓò£¬Î´³õʼ»¯µÄÈ«¾Ö±äÁ¿ºÍδ³õʼ»¯µÄ¾²Ì¬±äÁ¿ÔÚÏàÁÚµÄÁíÒ»¿éÇøÓò¡£- ³ÌÐò½áÊøÊÍ·Å
4.ÁíÍ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ