12-04-2011
clone() returns a threadid, not a pid.
clone() also shares a lot common resources, if you have 2.6.34 kernel, CLONE_NEWPID
will result in a new process address space, but the return value is still thread id.
clone was invented to do threading. Use fork() if you want to create a real child process.
If you want threads use the the pthread library - pthread_create() and dozens of associated calls. Do not use clone() like that.
9 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
:cool:
I need to execute a shell script to do the following:
cat a file
run two back ground processes using the first two values from the file
wait till those background processes finish
run two more background processes using the next two values from the file
wait till those background... (1 Reply)
Discussion started by: halo98
1 Replies
2. UNIX for Dummies Questions & Answers
Hi everyone
I'm novice at Unix programming and I hope to post this thread in the correct place.
I have the following doubts:
1 Suppose we have some processes which are B's children process and another process A which has no relation with B and its children.
Can A do wait () for a... (5 Replies)
Discussion started by: Puntino
5 Replies
3. Shell Programming and Scripting
In one of the shell script (Where abinitio graph is called), the last line is wait ${!}. What does this wait ${!} mean ??? (2 Replies)
Discussion started by: risshanth
2 Replies
4. Shell Programming and Scripting
Did not use 'wait' yet.
How I understand by now the wait works only for child processes, started background.
Is there any other way to watch completion of any, not related process (at least, a process, owned by the same user?)
I need to start a background process, witch will be waiting... (2 Replies)
Discussion started by: alex_5161
2 Replies
5. Red Hat
Can someone explain what is the status says WAIT on performance monitoring
command.. (2 Replies)
Discussion started by: suresh_krish
2 Replies
6. Solaris
The Storage Admin presents a clone of a LUN, on the source side the device is under VxVM control, assuming that on the target side we have scanned the new cloned LUN at the OS level (solairs), from there on how do we initialize and mount the new volume.
Please give some guidence on this or a... (1 Reply)
Discussion started by: Tirmazi
1 Replies
7. Shell Programming and Scripting
Hi,
I am facing a strange issue,
when i call a script from my while loop in background it doesnt go in background, despite the wait i put below the whil loop it goes forward even before the process put in background is completed.
cat abc.txt | while read -u4 line
do
#if line contains #... (2 Replies)
Discussion started by: mihirvora16
2 Replies
8. UNIX for Dummies Questions & Answers
Hi,
I'm fairly new to the git command and I'm trying to figure out how to check if your local clone is up to date with the master. I know you can do the same thing on packages with apt-get by using update and then upgrade. Is there something similar with git? (0 Replies)
Discussion started by: silverdust
0 Replies
9. Programming
Waiting for more fun Ardunio parts from AliExpress, I decided to test two cheap Chinese Arduino UNO clones.
The Arduino UNO R3 (CH340G) MEGA328P
The Wavgat UNO R3 (CH340G) MEGA328P
Both of these Chinese Ardunio clones sell for about $3 USD, delivered to your door.
The bottom line is... (0 Replies)
Discussion started by: Neo
0 Replies
wait(1) General Commands Manual wait(1)
NAME
wait - await process completion
SYNOPSIS
[pid]
DESCRIPTION
If no argument is specified, waits until all processes (started with of the current shell have completed, and reports on abnormal termina-
tions. If a numeric argument pid is given and is the process ID of a background process, waits until that process has completed. Other-
wise, if pid is not a background process, exits without waiting for any processes to complete.
Because the system call must be executed in the parent process, the shell itself executes without creating a new process (see wait(2)).
Command-Line Arguments
supports the following command line arguments:
The unsigned decimal integer process
ID of a command, whose termination is to wait for.
WARNINGS
Some processes in a 2-or-more-stage pipeline may not be children of the shell, and thus cannot be waited for.
SEE ALSO
csh(1), ksh(1), sh-posix(1), sh(1), wait(2).
STANDARDS CONFORMANCE
wait(1)