05-29-2012
Read cancellation point and then you will know if you can use pthread_cancel.
Threads The read system call is one of a lot of cancellation points.
BTW - threads are very different from a child process.
You can also invoke pthread_kill but other threads and the main thread can be affected unless threads all have enabled per-thread signal handling.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi All,
I have a written a script in korn shell for importing data into a oracle database. The shell invokes the import within the script. I want to kill this import (child process) . I tries using trap, but this does not kill the import even if i press cnt c. i have to login into other terminal... (2 Replies)
Discussion started by: yerics
2 Replies
2. Shell Programming and Scripting
I am calling another script from my main script and making it run in the background,based upon the value of the input provided by the user I want to kill the child process ,I have written this code
timer.ksh &
PID=$$
print "\n Do you wish to continue .. (Y/N) : \c "
read kill_proc
if ]... (4 Replies)
Discussion started by: mervin2006
4 Replies
3. Shell Programming and Scripting
I have a script that (ideally) starts tcpdump, sleeps a given number of seconds, then kills it.
When I do this for 10 seconds or and hour, it works fine. When I try it for 10 hours (the length I actually want) it just doesn't die, and will actually stick around for days.
Relevant part of my... (1 Reply)
Discussion started by: upnix
1 Replies
4. UNIX for Advanced & Expert Users
Hi,
Is there a way I can kill all the child processes of a process, given its process id.
Many thanks in advance.
J. (1 Reply)
Discussion started by: superuser84
1 Replies
5. UNIX for Advanced & Expert Users
Hi all,
I am writing a script which calls other third party scripts that perform numerous actions. I have no control over these scripts.
My problem is, one of these scripts seems to execute and do what it is meant to do, but my calling / parent script always exits at that point. I need to... (4 Replies)
Discussion started by: mark007
4 Replies
6. Solaris
Hi All
I have a separate thread ListenerThread having a socket listening to info broadcasted by some remote server. This is created in my main thread.
Because of requirements, once the separate thread is started I need to avoid any blocking function on the main thread. Once it comes to the... (2 Replies)
Discussion started by: manustone
2 Replies
7. Red Hat
Hi All,
Hope this is right area to ask this question.
I have a shell script (bash) "wrapper.sh", which contains few simple shell command
which executes a "server.sh" (conatins code to execute a java server) as a daemon.
Now what I want to kill this "server.sh" so that the server should... (2 Replies)
Discussion started by: jw_amp
2 Replies
8. Programming
Parent Thread Of Child Thread
Suppose a process creates some threads say threadC and threadD.
Later on each of these threads create new child threads say threadC1, threadC2, threadC3 etc. So a tree of threads will get created.
Is there any way to find out the parent thread of one such... (1 Reply)
Discussion started by: rupeshkp728
1 Replies
9. Shell Programming and Scripting
I'm likely going to explain this clumsily, so apologies in advance:
I have the following script:
#!/bin/bash
pidPrefix="logGen"
checkPrime ()
{
if /sbin/ifconfig eth0:0|/bin/grep -wq inet;then isPrime=1;else isPrime=0;fi
}
killScript ()
{
/usr/bin/find /var/run -name... (4 Replies)
Discussion started by: DeCoTwc
4 Replies
10. Solaris
Hello,
A little background on what we are doing first. We are running several applications from a CLI, and not all of them are fully functional. They do on occasion core dump, not a problem. We are running a service that takes a screen scrape of those apps and displays them in a more user... (5 Replies)
Discussion started by: Bryan.Eidson
5 Replies
LEARN ABOUT NETBSD
pthread_cancel
PTHREAD_CANCEL(3) BSD Library Functions Manual PTHREAD_CANCEL(3)
NAME
pthread_cancel -- cancel execution of a thread
LIBRARY
POSIX Threads Library (libpthread, -lpthread)
SYNOPSIS
#include <pthread.h>
int
pthread_cancel(pthread_t thread);
DESCRIPTION
The pthread_cancel() function requests that thread be canceled. The target thread's cancelability state and type determines whether and when
the target thread reacts to the cancellation request.
1. The cancelability state of a thread is determined by the pthread_setcancelstate(3) function. The state can be either:
o PTHREAD_CANCEL_ENABLE: the cancelability type determines when the actual cancellation occurs. This is the default.
o PTHREAD_CANCEL_DISABLE: the request from pthread_cancel() remains queued until the cancellation is enabled by the thread.
2. The cancellation type of a thread is determined by the pthread_setcanceltype(3) function. The type can be either:
o PTHREAD_CANCEL_DEFERRED: the cancellation will be delayed until the thread calls a function that is a cancellation point. This
is the default. The available cancellation points are listed in pthread_setcanceltype(3).
o PTHREAD_CANCEL_ASYNCHRONOUS: the thread can be canceled at any time.
When the tread reacts to the cancellation request, the following occur:
1. The cancellation cleanup handlers for the thread are called; see pthread_cleanup_push(3).
2. When the last cancellation cleanup handler returns, the thread-specific data destructor functions will be called for the thread.
3. When the last destructor function returns, the thread will be terminated; see pthread_exit(3).
The cancellation processing in the target thread runs asynchronously with respect to the calling thread returning from pthread_cancel().
A status of PTHREAD_CANCELED is made available to any threads joining with the target. The symbolic constant PTHREAD_CANCELED expands to a
constant expression of type (void *), whose value matches no pointer to an object in memory nor the value NULL.
RETURN VALUES
If successful, the pthread_cancel() functions will return zero. Otherwise an error number will be returned to indicate the error.
ERRORS
The pthread_cancel() function may fail if:
[ESRCH] No thread could be found corresponding to that specified by the given thread ID.
SEE ALSO
pthread_cleanup_pop(3), pthread_join(3), pthread_testcancel(3)
STANDARDS
The function conforms to IEEE Std 1003.1-2001 (``POSIX.1'').
BSD
July 9, 2010 BSD