02-01-2012
I knew it was going to be something daft like that I'd missed!
Thank you so much!
You are right about my else statement of course. I have used fork to get back to my parent process elsewhere in the code.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
how to start a process and make it sleep for 5 mins and then kill that process (6 Replies)
Discussion started by: shrao
6 Replies
2. Solaris
Hi,
I have a V240 Solaris 10 (06.06) with a Solaris image of 08.07 (newest release). On the jumpstart server I have also installed JET for testing.
Client was setup using the JET utilities.
jade = jumpstart server
phoebus = client (MAC: 0:3:ba:9e:6f:2d IP:192.168.58.121 )
When I now... (0 Replies)
Discussion started by: Ironhead
0 Replies
3. Linux
I have setup nimol on a Fedora 9 machine. Nimol is installed and correctly configured and I have a client rs6000 (43p) declared in the dhcpd.conf file. all is running correctly and tftp is installed. I am monitoring /var/log/messages when I start the 43p and see the dhcp request come in and a reply... (0 Replies)
Discussion started by: johnf
0 Replies
4. Shell Programming and Scripting
Hi all,
I'm doing automation task for my team and I just started to learn unix scripting so please shed some light on how to do this:
1) I have 2 sets of datafiles - datafile A and B. These datafiles must be loaded subsequently and cannot be loaded concurrently.
2) So I loaded datafile A... (10 Replies)
Discussion started by: luna_soleil
10 Replies
5. UNIX for Dummies Questions & Answers
httpd status is stopped.cant start it again by :
/etc/init.d/httpd restart or /etc/init.d/httpd/start
help needed (2 Replies)
Discussion started by: raksha.s
2 Replies
6. UNIX for Advanced & Expert Users
Hi,
Is there a way to start a process that any other user would have the privs to kill?
Thanks. (1 Reply)
Discussion started by: rebelbuttmunch
1 Replies
7. UNIX for Dummies Questions & Answers
What I need to learn is how to use a script that launches background processes, and then kills those processes as needed.
The script successfully launches the script. But how do I check to see if the job exists before I kill it?
I know my problem is mostly failure to understand parameter... (4 Replies)
Discussion started by: holocene
4 Replies
8. UNIX for Dummies Questions & Answers
Guys, I have the following code
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/wait.h>
#include <unistd.h>
void read2();
main(int argc, char** argv)
{
int pid,status;
pid=fork();
if ( pid == 0 )
{
read2(argv,... (4 Replies)
Discussion started by: pfpietro
4 Replies
9. UNIX for Dummies Questions & Answers
Hi all,
I have a problem. I have iptables enabled in my ubuntu system on which tftp server is configured. Now when I try to do a tftpget from another ubuntu 32-bit machine, file transfer is not happening. But, when iptables are disabled, everything is fine. I heard that some ip_conntrack module... (0 Replies)
Discussion started by: sai2krishna
0 Replies
10. Programming
I'm reading Operating Systems in Depth by Thomas W. Doeppner, and I have a question about execl. He says it's called after fork(), and that it replaces the text (code) of the current process and replaces it with the code of the new program. But that doesn't make sense to me.
Does that mean... (4 Replies)
Discussion started by: SirSalt
4 Replies
LEARN ABOUT BSD
pthread_atfork
PTHREAD_ATFORK(3) Library Functions Manual PTHREAD_ATFORK(3)
NAME
pthread_atfork - register handlers to be called at fork(2) time
SYNOPSIS
#include <pthread.h>
int pthread_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void));
DESCRIPTION
pthread_atfork registers handler functions to be called just before and just after a new process is created with fork(2). The prepare han-
dler will be called from the parent process, just before the new process is created. The parent handler will be called from the parent
process, just before fork(2) returns. The child handler will be called from the child process, just before fork(2) returns.
One or several of the three handlers prepare, parent and child can be given as NULL, meaning that no handler needs to be called at the cor-
responding point.
pthread_atfork can be called several times to install several sets of handlers. At fork(2) time, the prepare handlers are called in LIFO
order (last added with pthread_atfork, first called before fork), while the parent and child handlers are called in FIFO order (first
added, first called).
To understand the purpose of pthread_atfork, recall that fork(2) duplicates the whole memory space, including mutexes in their current
locking state, but only the calling thread: other threads are not running in the child process. The mutexes are not usable after the fork
and must be initialized with pthread_mutex_init in the child process. This is a limitation of the current implementation and might or
might not be present in future versions.
RETURN VALUE
pthread_atfork returns 0 on success and a non-zero error code on error.
ERRORS
ENOMEM insufficient memory available to register the handlers.
AUTHOR
Xavier Leroy <Xavier.Leroy@inria.fr>
SEE ALSO
fork(2), pthread_mutex_lock(3), pthread_mutex_unlock(3).
LinuxThreads PTHREAD_ATFORK(3)