Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

การสร้างหลายกระบวนการโดยใช้ fork() ใน C


ในส่วนนี้เราจะมาดูวิธีการใช้ fork() เพื่อสร้างโปรเซสลูกใน C และเราทำงานบางอย่างที่แตกต่างกันในแต่ละกระบวนการ ดังนั้นในกระบวนการหลักของเรา เราจะพิมพ์ค่าต่างๆ กัน

เมื่อเรียก fork() จะส่งกลับค่า หากค่ามากกว่า 0 แสดงว่าอยู่ในกระบวนการหลัก มิฉะนั้นจะอยู่ในกระบวนการย่อย เมื่อใช้สิ่งนี้ เราจึงสามารถแยกแยะระหว่างกระบวนการต่างๆ ได้

โค้ดตัวอย่าง

#include <stdio.h>
#include <unistd.h>
int main() {
   int n = fork(); //subdivide process
   if (n > 0) { //when n is not 0, then it is parent process
      printf("Parent process \n";
   } else { //when n is 0, then it is child process
      printf("Child process \n");
   }
   return 0;
}

ผลลัพธ์

soumyadeep@soumyadeep-VirtualBox:~$ ./a.out
Parent process
soumyadeep@soumyadeep-VirtualBox:~$ Child process
soumyadeep@soumyadeep-VirtualBox:~$