4. API 比较细节 |
注意在pthreads 中fork()函数调用的行为与在Solaris线索中fork1()相同是很重要的。在pthreads 中fork()调用和在Solaris线索中fork1()调用二者都创建一个新的进程,在子进程中仅复制调用线索。
如果在Solaris线索中调用fork(),包含所有线索的整个进程复制在子进程中。在pthreads 中不存在这个功能。
为了使用pthreads 的fork()以建立一个应用程序,应该在链接阶段包含库libpthread.so(例如-lpthread )。当前想移到pthreads API的Solaris线索用户,可以用fork()替代fork1();如果它们在使用fork()(在Solaris上下文),它们将不得不重新修改它们的程序,因为在pthreads 中没有等价的fork()。
在Solaris 中
pid_t pid;
pid = fork ();
在pthreads 中
不支持
在Solaris 中
pid_t pid;
pid = fork1 ();
在pthreads 中
pid_t pid;
pid = fork ();
Copyright: NPACT |