Unix父进程fork之后子进程是否继承父进程的定时任务和占有端口?
子进程将继承父进程调用fork()之前的所有系统资源,当然包括代码段。
但是,父子进程的地址空间一开始是共享的。只有当父子进程中的任何一个企图修改其中的内容时才进行复制,这就是copy on write。ref:https://zhidao.baidu.com/question/295061482.html
问题:
执行fork之后,
1.子进程会继承父进程的定时任务吗?
2.子进程会占有父进程本来占有的端口(如父进程原来用于监听外部请求的端口)吗?
ps:
问题起因:看了这片文章(http://blog.csdn.net/vernonzheng/article/details/8644936)最后的分析
:“因此我分析,问题的原因可能是这样的,虽然Linux早已在fork()中采用copy-on-write机制,但是JVM调
用fork()后,Java进程里的其它线程往往会被调度回来继续执行,修改了自己的内存,而这个时候
execvp()还没有执行,于是悲剧就发生了,内存都要重新复制一遍。“