ÕâÊÇ´úÂ룺
#include
by zhangbiao2009 - C/C++ - 2009-06-18 10:13:13 ÔĶÁ£¨4823£© »Ø¸´£¨14£©
ÈçºÎÔÚlinux ϵͳÖÐfork³öÎÞÏÞ¶à¸ö½ø³ÌÀ´ÄØÐ»Ð»»Ø´ð
ÏÖÔÚÓиöÎÊÌâÎÒÓÐÒÉÎÊ? ¹¹³É£º ËùÓлúÆ÷¶¼ÊÇunix£¬informix ,C Ò»¸öÖÐÐÄ·þÎñÆ÷£¬ÏÂÃæÓм¸°Ų̀PC£¨Ã¿Ì¨PC¶¼ºÍ·þÎñÆ÷ÏàÁ¬£©.ÿ̨PCͨ¹ý·þÎñÆ÷·¢ËͰüÎĸøÁíһ̨pcͬʱµÈ´ýËüµÄ·µ»Ø£¨·µ»ØÒ²ÊÇͨ¹ý·þÎñÆ÷£©. ͨÐÅ: ÏÖÔÚËùÓÐpcºÍ·þÎñÆ÷¶¼ÊÇ£¨socket)¶ÌÁ¬½Ó,µ±Ò»Ì¨pc·¢ËͰüÎÄʱ·þÎñÆ÷½ÓÊÕµ½ºóÁ¢¿ÌforkÒ»¸ö½ø³Ì²¢·¢Ë͵½Áíһ̨pc . ÎÊÌ⣺ ÈçÉÏËùÊö£¬µ±ÓÐÉϰŲ̀pcͬÊÇÏ໥ͨ¹ý·þÎñÆ÷Ö®¼äͨÐŵϰ£¬·þÎñÆ÷²»ÊÇÒªfrokÉϰٸö½ø³Ì£¬ÕâÑù²»ÊÇ»á...
ËäÈ»ÎÒ¸Õ½Ó´¥linux£¬µ«ÊÇÎÒ·¢ÏÖËüÈÃÈ˲»µÃ²»×ÅÃÔ£¬ÎÊÒ»¸ö´ÖdzµÄÎÊÌ⣬Çë´ó¼Ò°ï棡 ÏÂÃæÊÇÎÒ×Ô¼ºÊÔÑéµÄÒ»¸öС³ÌÐò¶Î£º main() { int pid, child_id, child_id_two; pid = getpid(); printf("process ID = %d\n", pid); if ((child_id=fork()) != 0) { /* ½¨Á¢µÚÒ»¸ö×Ó½ø³Ì */ pid = getpid(); printf("process ID (parent) = %d\n", pid); printf("parent process complete.\n"); } else if ((child_id_two=fork()) =...
ÎÒÏëÖªµÀ£¬1¡¢ÔÚlinux Ï£¬ È«¾Ö±äÁ¿ÊÇ ½ø³Ì¼ä¹²Ïí»¹ÊǶÀÁ¢µÄ£¬
2¡¢ÎªÊ²Ã´fork´´½¨½ø³Ìºó£¬¸¸×Ó½ø³Ì´ò³öµÄ¾Ö²¿±äÁ¿µØÖ·ÊÇÒ»ÑùµÄÄØ
ÎÒÀí½âµÄ£ºfork´´½¨½ø³Ì£¬Êµ¼ÊÉÏÊÇ·ÖÅäÒ»¿éÄڴ棬×Ó½ø³Ì¸´ÖƸ¸½ø³ÌµÄÊý¾Ý£¬ÉÏÏÂÎÄ£¬µÈ£¬Èç¹û ÕâÑù£¬¸¸×Ó½ø³ÌµÄ¾Ö²¿±äÁ¿µØÖ·¿Ï¶¨ÊDz»Ò»ÑùµÄ°¡£¬ÎªÊ²Ã´ÏÂÃæµÄ³ÌÐò
ʵÑé½á¹û¸¸×Ó½ø³ÌµÄ¾Ö²¿±äÁ¿µØÖ·ÊÇÒ»ÑùµÄÄØ
³ÌÐò£º
#include
ÒòΪfork³öÀ´µÄ×Ó½ø³ÌÖ´Ðгɹ¦exit(0)£¬´Ëʱ×Ó½ø³Ì»á²úÉúS I G C H L DÐźţ¬¸ã²»Çå³þ´Ëʱ¸ÃÈçºÎ´¦Àí£¬ÓÐÈË˵Äں˻áºöÂÔ¸ÃÐźţ¬ÓÐÈË˵ҪwaitpidÊո»¹ÓÐÈË˵ҪÎÞ×èÈûµÄÊո·ñÔò»á²úÉú½©ËÀ½ø³Ì ¸½×¢:¸¸½ø³ÌΪһ¸öºóÌ¨ÊØ»¤½ø³Ì£¬Ñ»·É¨ÃèĿ¼ÏµÄÈÕÖ¾Îļþ£¬Ã¿´¦ÀíÒ»¸öXXXX.log¾ÍforkÒ»¸ö×Ó½ø³Ì½øÐд¦Àí£¬´¦ÀíÍê±Ïexit(),²¢½«¸ÃÈÕÖ¾Îļþ¸ÄÃûΪXXXX.log.done ¸ÃÈçºÎ×öÄØ£¿¿ÒÇëperl¸ßÊÖÃ÷ʾ£¬Ð»Ð»£¡£¡
ËäÈ»ÎÒ¸Õ½Ó´¥linux£¬µ«ÊÇÎÒ·¢ÏÖËüÈÃÈ˲»µÃ²»×ÅÃÔ£¬ÎÊÒ»¸ö´ÖdzµÄÎÊÌ⣬Çë´ó¼Ò°ï棡 ÏÂÃæÊÇÎÒ×Ô¼ºÊÔÑéµÄÒ»¸öС³ÌÐò¶Î£º main() { int pid, child_id, child_id_two; pid = getpid(); printf("process ID = %d\n", pid); if((child_id=fork()) != 0) { /* ½¨Á¢µÚÒ»¸ö×Ó½ø³Ì */ pid = getpid(); printf("process ID (parent) = %d\n", pid); printf("parent process complete.\n"); } else i...
дÁËÒ»¸ö½Å±¾£¬µ±Ö´ÐÐËüµÄʱºòÓÃps¿´È´·¢ÏÖÓÐÁ½¸öÒ»Ñù½ø³Ì£¬ÆäÖÐÒ»¸öÊÇÁíÒ»¸öµÄ×Ó½ø³Ì£¬Çë½Ì¸÷λ£¬ÎªÊ²Ã´»áÕâÑù¡£Çë¸÷λ²»ÁßÖ¸½Ì¡£
Ò»¸öunixÓû§×î¶à¿Éfork¶àÉÙ½ø³Ì?? ÎÒµÄsco unix µÄÒ»¸öÓû§ÏÖÔÚ×î¶àÊǸö½ø³Ì, ÈçÒª¸ü¶à½ø³ÌÈçºÎ°ìѽ?? ×î¶à¿ÉÒÔÉè¶àÉÙѽ?? 400¸ö¿ÉÒÔÂð????
¾Ý˵linux϶àÏß³ÌÏà¶Ô¶à½ø³ÌûÓÐÓÅÊÆ?Ϊʲôѽ? ÁíÍâ¿´µ½ºÜ¶à·þÎñÆ÷µÄÔ´´úÂëȷʵÓõÄÊÇ¶à½ø³Ì ллָ½Ì