[ת]Linux: waitºÍ½©Ê¬½ø³Ì
֮ǰÎÒÃÇÒѾ½²µ½ÓÃfork()À´´´½¨Ò»¸öнø³Ì£¬ÓÃexit()À´ÖÕÖ¹Ò»¸ö½ø³Ì¡£ÏÖÔÚÎÒÃǽ«ÂÔ΢ÉîÈëÁ˽âexit()Ö´ÐÐÖ®ºó·¢ÉúµÄÊÂÇé¡£
ÊÂʵÉÏ£¬exit()ÖÕÖ¹½ø³Ì²¢Ã»Óн«Æä³¹µ×Öսᣬ¶øÊǽ«Ò»¸öÕý³£µÄ½ø³Ì±ä³ÉÁËÒ»¸ö½©Ê¬½ø³Ì¡£¸Ã½©Ê¬½ø³Ì¼¸ºõ²»Õ¼ÓÃ×ÊÔ´£¬Ã»ÓпÉÖ´ÐеĴúÂ룬Ҳ²»Äܱ»µ÷¶È£¬½ö½öÖ»ÄÜÔÚ½ø³ÌÁбíÖб£ÁôÒ»¸öλ×Ó¡£ËùÒÔ½©Ê¬½ø³ÌÌýËÆ¿Ö²À£¬Êµ¼ÊÉÏÖ»Äܱ»ºóÈËÆ¾µõ¶øÒÑ
£¬µ«ÊÇÈ´ÓÐËü´æÔÚµÄʵ¼Ê¼ÛÖµ¡£
ËüµÄ¼ÛÖµ¾ÍÔÚÓÚËü¼ÇÔØÁËÒÑÍ˳ö×Ó½ø³ÌµÄ״̬¡£ÕâЩ״̬°üÀ¨½ø³ÌÊÇ·ñÊÇÕý³£Í˳ö£¿ËùÕ¼ÓеÄcpuʱ¼ä£¿½ø³ÌID£¿µÈµÈ¡£Ëµ°×ÁË£¬½©Ê¬½ø³ÌÖ®ËùÒÔ´æÔÚ£¬¾ÍÊÇΪ¹©ÆäËû½ø³ÌÊÕ¼¯ÒÑÍ˳ö½ø³ÌµÄÐÅÏ¢Óõġ£
µ«ÊÇ£¬linuxµÄ½ø³ÌÊýÊÇÓÐÉÏÏ޵쬽ø³ÌÁбíÖÐÌ«¶àµÄ“½©Ê¬”Ϊ×èÈÅ“ÐÂÉúÃüµÄ”µ®Éú¡£ËùÒÔÎÒÃÇÐèÒªÔÚÊÕ¼¯ËüµÄÐÅÏ¢ºó£¬½«Æä³¹µ×ÏûÃð¡£Õâʱ£¬ÎÒÃǾÍÒªÓõ½wait()º¯Êý¡£
pid_t wait(int *status)
pid_sÊÇwaitµÄ·µ»ØÖµÊý¾ÝÀàÐÍ£¬statusÊÇÒ»¸öÖ¸Õ룬ָÏòÒ»¸öÕûÐÎÊý¾Ý£¬status¾ÍÊÇÓÃÀ´ÊÕ¼¯ÒÑÍ˳ö½ø³ÌµÄ״̬µÄ£¬¼´½©Ê¬½ø³ÌµÄÐÅÏ¢¡£Æä
Ö´Ðйý³ÌÊÇÕâÑùµÄ£º½ø³ÌÒ»µ©Ö´ÐÐwait£¬¾ÍÁ¢¼´×èÈû×Ô¼º£¬Ö±µ½²éÕÒµ½ÒѾ±ä³É½©Ê¬µÄ×Ó½ø³Ì£¬ÊÕ¼¯ËüµÄÐÅÏ¢²¢½«Æä³¹µ×´Ý»Ùºó·µ»Ø£¬²»È»¾ÍÒ»Ö±×èÈû£¬Ö±µ½½©
ʬ×Ó½ø³Ì³öÏÖ¡£
¼ÙÈçÎÒÃDz»¹ØÐĽ©Ê¬½ø³ÌµÄÐÅÏ¢£¬Ö»Ïë°ÑËüÏûÃð£¬ÄÇôֻҪÕâÑùwait£¨NULL£©£¬Ö»»á·µ»Ø×Ó½ø³ÌµÄIDºÅ¡£Õý³£Çé¿öÏ£¬waitÊÕ¼¯ÒÑÍ˳ö½ø³ÌµÄ״̬£¬
²¢´æÈëstatusÖУ¬ËüËùÖ¸ÏòµÄÕûÊýÖ¸³öÁËÊÇ·ñÊÇÕý³£Í˳ö¡¢ÒÔ¼°Õý³£½áÊøÊ±µÄ·µ»ØÖµ¡£¶ÔÓÚÕâÁ½·½ÃæµÄÐÅÏ¢£¬ÎÒÃÇÓúêÀ´±íÕ÷£º
WIFEXITED(status£©ÓÃÀ´Ö¸Ê¾×Ó½ø³ÌÊÇ·ñÊÇÕý³£Í˳ö£¬ÈôÊÇ£¬Ôò·µ»ØÒ»¸ö·ÇÁãÖµ¡£ÕâÀïµÄstatusÊÇwait£¨*status£©ÖÐÖ¸ÕëµÄ¶ÔÏó¡£
WEXITSTATUS(status)ÓÃÀ´µ±×Ó½ø³ÌÕý³£Í˳öʱ£¬ÌáÈ¡×Ó½ø³ÌµÄ·µ»ØÖµ¼´¶ÔÓ¦exit£¨*£©ÖеÄÖµ¡£
ÓÉ´Ë¿ÉÖª£¬ÒÔÉÏÁ½¸öºê¿ÉÒÔÓÃÀ´ÌáÈ¡½©Ê¬½ø³ÌËù¼ÇÔØµÄÒ»²¿·Ö״̬ÐÅÏ¢¡£
³ýÁËwait£¨£©º¯ÊýÀ´ÌáÈ¡½©Ê¬½ø³ÌµÄÐÅÏ¢²¢½«ÆäÏûÃðÖ®Í⣬»¹ÓÐÒ»¸öº¯ÊýͬÑù¿ÉÒÔʤÈÎÕâ¸ö¹¤×÷¡£pid_t wait(pid_t
pid int *status
options),pidÓÃÀ´Ö¸¶¨¶ÔÓ¦½ø³ÌµÄID£¬µ±ËüÊÇ-1ʱ£¬Ôò¿ÉÒÔ
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæÍ¼±ê
Ŀǰ½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËÆµÄ·½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
Linux°æ±¾2.6.27¸üкó,ÈËÃÇ·¢ÏÖ,ÕâÒ»Äں˵ÄÔ´´úÂëÊýÁ¿ÒѾ³¬¹ýÁË1000ÍòÐÐ.
µ±È»,ÕâЩÐÐÊý½ö½öÊǼÆËã»úͳ¼Æ³öÀ´µÄÐÐÊý,°üÀ¨¿Õ°×ÐÐ,ΪÁË´úÂëµÄ¿É¶ÁÐÔÔö¼ÓµÄ×¢Ê͵È,µ±È»LinuxºÍËùÓеij¤ÆÚÏîĿһÑù,Ëæ×Åʱ¼äµÄÍÆÒÆ,¾ÉµÄ´úÂë »á±»¶ªÆúºÍ¸ü»»,µ«×ÜÌ广ģÀ´Ëµ,LinuxµÄÄÚºËÔÚ²»¶ÏÔöÇ¿,ÒÔÏÂÊÇһЩÓÐȤµÄͳ¼ÆÊý×Ö,ËüÃÇ¿ÉÒÔ¸æËßÄãLin ......
ÓÉÓÚ32λ²Ù×÷ϵͳÏÂÃæµ¥½ø³Ì×î´óÄÚ´æÊ¹Óò»Äܳ¬¹ý2G£¬¶øÎÒÃÇÓÃMemcached¾³£ÐèҪʹÓøü´óµÄÄÚ´æ¿Õ¼ä£¬ËùÒÔÑ¡Ôñ64λµÄLinux°æ±¾ÊDZØÐëµÄ£¬64λOSϵÄMemcached°²×°ºÍ32λOSϲ¶à£¬Ö»ÓÐÒ»¸öµØ·½ÉÔÓв»Í¬£¬Ïê¼ûÏÂÃæµÄºìÉ«×ÖÌ岿·Ö¡£
ÎÒÃÇÒÔ°æ±¾memcached-1.2.6ΪÀý£¬¶ÔÓÚÆäËû°æ±¾Ìæ»»ÏàÓ¦°æ±¾ºÅ¼´¿É£»
ÏÂÔØµØÖ·£ºhttp://w ......
PHPÔÚÔËÐеÄʱºò£¬Ö±½Ókillµô£¬ÓпÏÄÜÔì³ÉÊý¾ÝµÄ¶ªÊ§¡£ÐÒºÃphpÄ£¿é£¬ÓÐÕë¶ÔsignalµÄ´¦Àí¡£
´¦Àí·½Ê½£¬Ê×Ïȼì²éÓÐûÓа²×° PCNTL Ä£¿é
È»ºó¿ÉÒÔÔÚÒ»¸ö°üº¬ÎļþÖУ¬Ìí¼ÓÒÔÏ´úÂë
global $exitFlag;
$exitFlag = false;
// Ôö¼ÓlinuxÐźÅÁ¿´¦Àí
if (DIRECTORY_SEPARATOR != '\\') {
pcntl_signal(SI ......
Ò» ÈýÖÖÀàÐ͵ÄÌ×½Ó×Ö£º
1.Á÷ʽÌ×½Ó×Ö£¨SOCKET_STREAM)
Ìá¹©ÃæÏòÁ¬½ÓµÄ¿É¿¿µÄÊý¾Ý´«Êä·þÎñ¡£Êý¾Ý±»¿´×÷ÊÇ×Ö½ÚÁ÷£¬ÎÞ³¤¶ÈÏÞÖÆ¡£ÀýÈçFTPÐÒé¾Í²ÉÓÃÕâÖÖ¡£
2.Êý¾Ý±¨Ê½Ì×½Ó×Ö£¨SOCKET_DGRAM£©
ÌṩÎÞÁ¬½ÓµÄÊý¾Ý´«Êä·þÎñ£¬²»±£Ö¤¿É¿¿ÐÔ¡£
3.ÔʼʽÌ×½Ó×Ö£¨SOCKET_RAW£©
......