Tworzę procesy podrzędne w for
-loop. W procesie potomnym mogę pobrać PID dla dziecka z getpid()
.Jak uzyskać PID dziecka w C?
Jednak z jakiegoś powodu, gdy próbuję zapisać wartość getpid()
do zmiennej zadeklarowanej przez proces macierzysty, zmiana jest anulowana, gdy sprawdzam go w procesie macierzystym. Zakładam, że ma to do czynienia z jakimś zakresem zmiennej procesowej. Nie bardzo znany z C, więc nie może być zbyt pewny.
W jaki sposób można zapisać wynik getpid()
potomka PID (po wywołaniu z procesu potomnego) do zmiennej w procesie nadrzędnym?
A może innym podejściem jest przechowywanie fork()
w zmiennej w rodzicu i wywoływanie jakiejś funkcji na tej zmiennej w celu pobrania PID dziecka? Nie wiem, jak to zrobić, więc jeśli to jest lepszy sposób, jak by to zrobić?
Wow Czuję się/jestem jak idiota, thx za szybkie odpowiedzi !!!! – Derek
@Johnsyweb Są to oczywiście 2 zdania. 's/i wewnątrz procesu potomnego /. Wewnątrz tych procesów potomnych/'. – glglgl
@glglgl: Aha. Jestem idiotą. Edytowano pytanie do uczynienia go bardziej zrozumiałym dla ludzi takich jak ja :) – Johnsyweb