window系统下C语言找不到fork()函数
生活随笔
收集整理的這篇文章主要介紹了
window系统下C语言找不到fork()函数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
window系統(tǒng)下C語言找不到fork()函數(shù)
有次模擬進程時,想在window系統(tǒng)下調(diào)用fork()函數(shù),但是就是引入相關(guān)頭文件都無法找到函數(shù),一開始是懷疑是否引入的頭文件有誤或者缺失,發(fā)現(xiàn)并沒有缺失或者錯誤,然后就懷疑上了是操作系統(tǒng)不同引起的。后來查找博文,才發(fā)現(xiàn)window下沒有fork函數(shù)。
window下沒有一個函數(shù)可以實現(xiàn)UNIX下的fork()函數(shù),其原因是歷史造成的.對于UNIX來說它一出生就是多用戶的系統(tǒng),所以它的所有進程都共有一個最原始的父進程init.而windows生下來時是個單用戶系統(tǒng)(DOS),不存在這樣的概念.所以fork這個函數(shù)是UNIX下特有的.
如果硬要模似,CreateProcess()不如用CreateThread()更接近實際情況,把主thread中的所有公共變量都塞入一個結(jié)構(gòu)/類的,帶入新的thread中,這樣可以大致完成"復制自身"的要求.
但由于是thread,所以主thread死后,子thread不能獨立存在,而fork()出來的子進程可以脫離主進程獨立存在,這一點在window下只有CreateProcess()才略有相似之處.
總之,實現(xiàn)類似fork()的功能在window下是復雜,必須個案處理,無法"一言以蔽之曰".
原文鏈接:https://blog.csdn.net/hfuuhgcc/article/details/84086205
總結(jié)
以上是生活随笔為你收集整理的window系统下C语言找不到fork()函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 洛图科技:今年 10 月中国电视市场出货
- 下一篇: window系统下安装TensorFlo