ChinaUnix.net
相关文章推荐:

fork为什么会返回两种状态

pid_t pid; pid=fork(); 调试时发现pid=10741,为什么不是0? 比较疑惑. 源代码: /*client process*/ #include ; #include ; #include ; #include ; #include ; #include ; #include ; #include ; #include ; #define SIZE sizeof(struct sockaddr_in) #define BUFSIZE 1024 #define PERMS 0644 /*Permission for open with ...

by lxl_018 - C/C++ - 2004-12-30 15:20:38 阅读(1771) 回复(6)

相关讨论

我在redhat下写的程序运行没问题,到solaris下编译没问题,但运行则fork和 pthread-create都返回-1,用perror打印是error 0,这是怎么回事呢,环境是 vmware solaris9

by mike_chen - C/C++ - 2005-08-25 16:43:21 阅读(981) 回复(1)

一个是返给子进程的的值0,一个是返给父进程的子进程的ID,下面这行语句怎么理解: if((pid = fork()) < 0) { printf("fork error"); exit(1); } else if (pid == 0) printf("output from child"); else printf("output from parent"); fork返回次值在if...else语句中怎么进行判断?请指点。

by xsg - C/C++ - 2004-03-24 13:06:54 阅读(2701) 回复(5)

写了一个脚本,当执行它的时候用ps看却发现有个一样进程,其中一个是另一个的子进程,请教各位,为什么这样。请各位不吝指教。

by Davice - Shell - 2004-02-05 12:09:20 阅读(1645) 回复(2)

为什么fork()次可以避免僵尸进程 ? 什么原理? 请大侠指点

by liuke432 - C/C++ - 2006-05-28 12:50:31 阅读(1812) 回复(4)
by mopeface - C/C++ - 2005-03-07 17:50:31 阅读(1561) 回复(4)

#include ; #include ; #include ; void p_error(char * s) { printf("%s",s); exit(1); } int main(void) { pid_t pid; if ((pid = fork()) < 0) p_error("fork error"); else if ( pid == 0) { ...

by hellhell - C/C++ - 2004-11-19 15:28:48 阅读(1406) 回复(2)

#include #include #include #include int glob =6; int main(){ int var; pid_t pid; var =88; if((pid=fork()<0)) printf("fork error"); else if(pid==0){ glob++; var++; }else{ sleep(2); } printf("pid=%d,glob=%d,var=%d\n",getpid(),glob,var); } 执行结果,怎么和书上说的严重不一样呀 [lgl@jlu work]$ gcc -o 8 8...

by redog - C/C++ - 2005-11-05 15:57:22 阅读(1532) 回复(10)

fork是否阻塞吗? 主程序out_server listen sock=accept(); childpid=fork() fprintf(stderr,"childpid = %d \n",childpid); if(childpid == -1) { perror(..); } if(childpid == 0) //子进程 { execle(...); } else { close(sock); } 子进程 out_instance 上述程序,在alpha下面暂没有发现问题,但在solaris 7/8下,发现有些时候外来连接 不能建立连接。经进一步打印信息发现,主进程阻塞在fo...

by pcanywhere - C/C++ - 2010-08-18 12:06:33 阅读(3835) 回复(15)

fork()为什么返回个值? 为什么使子进程得到返回值是0? 谢谢

by VIP_fuck - C/C++ - 2009-06-10 17:19:11 阅读(18925) 回复(35)

for ( $i=1;$i<=500 ; $i+=50 ) { unless ( fork ) { &abc ( $i ) ; exit } } sub abc { $j = shift ; for ( $j ; $j <= $j + 50 ; $j++ ) { .............................} } ------------------ 这样使用之后吧,和不用fork差不多呢,也不快呀。

by llvs - Perl - 2008-06-20 13:16:11 阅读(1606) 回复(3)