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

LinuxÏÂÏ̵߳Ĵ´½¨

×÷Õß:Hoyt Email:hoytluo@21cn.comÔ­ÎĵØÖ· http://wiki.chinaunix.net/index.php/Zhuan_c7
ǰÑÔ: LinuxÏÂÏ̵߳Ĵ´½¨ºÍ»ù±¾µÄʹÓÃ
Ï̵߳Äͬ²½ºÍ»¥³â
Ï̵߳ÄÌõ¼þ±äÁ¿
ÏȽéÉÜʲôÊÇÏß³Ì.ÎÒÃDZàдµÄ³ÌÐò´ó¶àÊý¿ÉÒÔ¿´³ÉÊǵ¥Ï̵߳Ä.¾ÍÊdzÌÐòÊǰ´ÕÕÒ»¶¨µÄ ˳ÐòÀ´Ö´ÐÐ.Èç¹ûÎÒÃÇʹÓÃÏ̵߳ϰ,³ÌÐò¾Í»áÔÚÎÒÃÇ´´½¨Ï߳ɵĵط½·Ö²æ,±ä³ÉÁ½¸ö"³Ì Ðò"ÔÚÖ´ÐÐ.´ÖÂԵĿ´À´ºÃÏóºÍ×Ó½ø³Ì²î²»¶àµÄ,Æäʵ²»È».×Ó½ø³ÌÊÇͨ¹ý¿½±´¸¸½ø³ÌµÄµØ Ö·¿Õ¼äÀ´Ö´ÐеÄ.¶øÏß³ÌÊÇͨ¹ý¹²Ïí³ÌÐò´úÂëÀ´Ö´ÐеÄ,½²µÄͨË×Ò»µã¾ÍÊÇÏ̵߳ÄÏàͬµÄ ´úÂë»á±»Ö´Ðм¸´Î.ʹÓÃÏ̵߳ĺô¦ÊÇ¿ÉÒÔ½ÚÊ¡×ÊÔ´,ÓÉÓÚÏß³ÌÊÇͨ¹ý¹²Ïí´úÂëµÄ,ËùÒÔû Óнø³Ìµ÷¶ÈÄÇô¸´ÔÓ.
1.Ï̵߳Ĵ´½¨ºÍʹÓÃ
Ï̵߳Ĵ´½¨ÊÇÓÃÏÂÃæµÄ¼¸¸öº¯ÊýÀ´ÊµÏÖµÄ.
#include <pthread.h>

int pthread_create(pthread_t *thread,pthread_attr_t *attr,
void *(*start_routine)(void *),void *arg);
void pthread_exit(void *retval);
int pthread_join(pthread *thread,void **thread_return);

pthread_create´´½¨Ò»¸öÏß³Ì,threadÊÇÓÃÀ´±íÃ÷´´½¨Ï̵߳ÄID,attrÖ¸³öÏ̴߳´½¨Ê±ºò µÄÊôÐÔ,ÎÒÃÇÓÃNULLÀ´±íÃ÷ʹÓÃȱʡÊôÐÔ.start_routineº¯ÊýÖ¸ÕëÊÇÏ̴߳´½¨³É¹¦ºó¿ªÊ¼ Ö´Ðеĺ¯Êý,argÊÇÕâ¸öº¯ÊýµÄΨһһ¸ö²ÎÊý.±íÃ÷´«µÝ¸østart_routineµÄ²ÎÊý. pthrea d_exitº¯ÊýºÍexitº¯ÊýÀàËÆÓÃÀ´Í˳öÏß³Ì.Õâ¸öº¯Êý½áÊøÏß³Ì,Êͷź¯ÊýµÄ×ÊÔ´,²¢ÔÚ×îºó ×èÈû,Ö±µ½ÆäËûÏß³ÌʹÓÃpthread_joinº¯ÊýµÈ´ýËü.È»ºó½«*retvalµÄÖµ´«µÝ¸ø**thread_ return.ÓÉÓÚÕâ¸öº¯ÊýÊÍ·ÅËùÒԵĺ¯Êý×ÊÔ´,ËùÒÔretval²»Äܹ»Ö¸Ïòº¯ÊýµÄ¾Ö²¿±äÁ¿. pt hread_joinºÍwaitµ÷ÓÃÒ»ÑùÓÃÀ´µÈ´ýÖ¸¶¨µÄÏß³Ì.×¢ÒâÓÉÓÚÏ̲߳»Í¬ÓÚ½ø³Ì.ËùÒÔÏß³ÌµÄ Í˳öÒ»¶¨ÒªÓÃpthread_exit¶ø²»ÊÇʹÓÃexit.·ñÔòÕû¸ö³ÌÐò»áÍ˳öµÄ. ÏÂÃæÎÒÃÇʹÓÃÒ»¸ö ʵÀýÀ´½âÊÍÒ»ÏÂʹÓ÷½·¨.ÔÚʵ¼ùÖÐ,ÎÒÃǾ­³£Òª±¸·ÝһЩÎļþ.ÏÂÃæÕâ¸ö³ÌÐò¿ÉÒÔʵÏÖµ± ǰĿ¼ÏµÄËùÓÐÎļþ±¸·Ý.±¸·ÝºóµÄºó׺ÃûΪbak
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <pthread.h&


Ïà¹ØÎĵµ£º

LinuxÄÚºËÅäÖÃÎĵµ(make menuconfig)

Ò»¡¢ÒýÑÔ£º
    ±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØÍ¼£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾­Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾­Ñ飨Õâ¸ö»¹µ ......

LinuxÏÂC++¿ª·¢¹¤¾ß½éÉÜ

LinuxÏÂC++¿ª·¢¹¤¾ß½éÉÜ
 
 
¡¡¡¡¸ÅÊö
¡¡¡¡¾ÍC£«£«¿ª·¢¹¤¾ß¶øÑÔ£¬ÓëWindowsÏÂ΢Èí£¨VC£¬ VS2005µÈ£©Ò»Í³ÌìÏÂÏà±È£¬Linux/UnixÏÂC£«£«¿ª·¢£¬¿ÉνÎ廨°ËÃÅ£¬¸÷ʽ¸÷Ñù¡£Emacs, vi, eclipse, anjuta£¬kdevelopµÈ²ã³ö²»Çî¡£
¡¡¡¡WindowsÏ£¬¿ª·¢¹¤¾ß¶àÒÔ¼¯³É¿ª·¢»·¾³IDEµÄÐÎʽչÏÖ¸ø×îÖÕÓû§¡£ÀýÈ磬VS2005¼¯³ ......

Linux Socketѧϰ±Ê¼Ç£¨1£© ѧϰĿ¼

1. Sockets ½éÉÜ
2. ÓòºÍµØÖ··ÖÀà
3. µØÖ·×ª»»º¯Êý
4. SocketÀàÐÍÒÔ¼°¸÷ÖÖЭÒé
5. ½«µØÖ·ºÍSocketÏà°ó¶¨
6. ÃæÏòÎÞÁ¬½ÓµÄЭÒé
7. ÃæÏòÁ¬½ÓµÄЭÒé
8. ·þÎñÆ÷¶ËµÄÃæÏòÁ¬½ÓЭÒé
9. Ö÷»úºÍÍøÂçÃû²éѯ
---------------------------------------------
10. ÔÚSocketÉÏʹÓñê×¼I/O
11. ²¢·¢¿Í»§ºÍ·þÎñÆ÷
12. Sock ......

ÔÚLinuxϱàдDaemon

ÔÚLinuxϱàдDaemon
 
ÔÚLinux£¨ÒÔRedhat Linux Enterprise Edition 5.3ΪÀý£©Ï£¬ÓÐʱÐèÒª±àдService¡£ServiceÒ²ÊdzÌÐò£¬Ò»°ãËæÏµÍ³Æô¶¯Óû§²»¸ÉÔ¤¾Í²»Í˳öµÄ³ÌÐò£¬¿ÉÒÔ³ÆÎªService¡£LinuxϵÄServiceÒ»°ã³ÆÎªDaemon¡£
 
ÒÔÉÏÊǹãÒåµÄServiceµÄ¶¨Òå¡£LinuxϵķþÎñÒ»°ã·ÅÔÚ/etc/init.dÎļþ¼ÐÏ¡£ä¯ÀÀÒ»ÏÂÕ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ