11-11-2010
Quote:
Originally Posted by
jackliang
yes, then what is the defaut behavior in detail of threse signals?
Unless otherwise handled? Gracelessly kill the program. A very few signals have special hardwired behavior, like SIGSTOP and SIGCONT, but these trigger behavior that happens
outside the program and are uncatchable. And no, before you ask a third time, none of them are for flushing the queues(which happens in userspace anyway).
If you want a special "flush the queues" signal you have to make it yourself. Better yet, fix your application so that it catches SIGTERM properly and quits gracefully instead of having to be killed hard.
This User Gave Thanks to Corona688 For This Post:
9 More Discussions You Might Find Interesting
1. HP-UX
Dear frnds,
i just migrated to hp_ux11i from digital unix, from my new system some printers not printing next day, what i mean is, in lpstat it shows printer is enabled but printing not happening. for that what i do u know, i just disable the lp and enable it again. then it would print. is there... (0 Replies)
Discussion started by: jestinabel
0 Replies
2. Filesystems, Disks and Memory
Hi All,
Am finding performance of my SD card using hdparm.
hdparm -tT /dev/BlockDev0
/dev/BlockDev0:
Timing cached reads: 1118 MB in 2.00 seconds = 558.61 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate
ioctl for device
Timing buffered disk reads: 14... (0 Replies)
Discussion started by: amio
0 Replies
3. Programming
Hello,
I'm doing a very simple program which reads a file and sends whatever is in the file through a socket. Like the program "file2cable".
Let's say i have a file containing the following, which is a hex dump of an ARP request frame:
ff ff ff ff ff ff 00 1b 24 79 5a 73 08 06
00 01 08... (5 Replies)
Discussion started by: semash!
5 Replies
4. Shell Programming and Scripting
Hi Guys,
My mail queue is showing a mail.
I want to flush the queue.
Can you let me know how to flush the mail queue.
Regards,
Magesh (12 Replies)
Discussion started by: mac4rfree
12 Replies
5. Linux
I am running Oracle Linux enterprise server 5.0. I just installed JDE 9.0 and after I started Webserver my root directory is 100% full.
Can some one help me flush stdout. I am new to linux.
Sam (5 Replies)
Discussion started by: s1a2m3
5 Replies
6. Programming
Hi,
Mentioned in Stevens & Rago "Advanced Programming in the UNIX"
I don't understand why must flush all line-buffered output streams when (a)an unbuffered or (b)a line-buffered stream require data from kernel? (2 Replies)
Discussion started by: Edward114
2 Replies
7. UNIX for Dummies Questions & Answers
I have a c program and I want to know what command to use to display the current buffer size of the file using Terminal in Unix? (0 Replies)
Discussion started by: Izzy123
0 Replies
8. Emergency UNIX and Linux Support
I have a Linux machine and it seems DNS cache is not getting clear on it. It is still showing old values, even after changing in DNS server by Network team. I did /etc/init.d/nscd restart But still it is showing old values on this server.
On my rest of servers in environment, nslookup is showing... (7 Replies)
Discussion started by: solaris_1977
7 Replies
9. Shell Programming and Scripting
Hello to all,
May you help saying me how to flush a specific domain in Linux SunOS5
I know the command rndc is to flush DNS cache, but I would like to know:
1- How to do a flush only on specific domain
2- How to see the content of DNS Resolver cache (similar to info given by IPCONFIG... (2 Replies)
Discussion started by: Ophiuchus
2 Replies
LEARN ABOUT LINUX
sigprocmask
SIGPROCMASK(2) Linux Programmer's Manual SIGPROCMASK(2)
NAME
sigprocmask - examine and change blocked signals
SYNOPSIS
#include <signal.h>
int sigprocmask(int how, const sigset_t *set, sigset_t *oldset);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
sigprocmask(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE
DESCRIPTION
sigprocmask() is used to fetch and/or change the signal mask of the calling thread. The signal mask is the set of signals whose delivery
is currently blocked for the caller (see also signal(7) for more details).
The behavior of the call is dependent on the value of how, as follows.
SIG_BLOCK
The set of blocked signals is the union of the current set and the set argument.
SIG_UNBLOCK
The signals in set are removed from the current set of blocked signals. It is permissible to attempt to unblock a signal which is
not blocked.
SIG_SETMASK
The set of blocked signals is set to the argument set.
If oldset is non-NULL, the previous value of the signal mask is stored in oldset.
If set is NULL, then the signal mask is unchanged (i.e., how is ignored), but the current value of the signal mask is nevertheless returned
in oldset (if it is not NULL).
The use of sigprocmask() is unspecified in a multithreaded process; see pthread_sigmask(3).
RETURN VALUE
sigprocmask() returns 0 on success and -1 on error.
ERRORS
EINVAL The value specified in how was invalid.
CONFORMING TO
POSIX.1-2001.
NOTES
It is not possible to block SIGKILL or SIGSTOP. Attempts to do so are silently ignored.
Each of the threads in a process has its own signal mask.
A child created via fork(2) inherits a copy of its parent's signal mask; the signal mask is preserved across execve(2).
If SIGBUS, SIGFPE, SIGILL, or SIGSEGV are generated while they are blocked, the result is undefined, unless the signal was generated by
kill(2), sigqueue(2), or raise(3).
See sigsetops(3) for details on manipulating signal sets.
SEE ALSO
kill(2), pause(2), sigaction(2), signal(2), sigpending(2), sigqueue(2), sigsuspend(2), pthread_sigmask(3), sigsetops(3), signal(7)
COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2008-10-17 SIGPROCMASK(2)