#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i =10;
/* initialize random seed: */
srand(time(NULL));
while(i--){
if(fork()==0){
/* initialize random seed here does not make a difference:
srand(time(NULL));
*/
printf("%d : %d\n",i,rand());
return;
}
}
return (EXIT_SUCCESS);
}
打印相同(每次運行不同)數量10次 - 預計? 我具有更復雜的一段代碼,其中每個叉狀過程反過來運行 - 沒有差別爲什麼rand()在fork之後不是那麼隨機的?
非常感謝你的答案 - 現在清楚:) – 2011-12-24 12:21:55