which signal will flush the file buffer in C/C++


 
Thread Tools Search this Thread
Top Forums Programming which signal will flush the file buffer in C/C++
# 1  
Old 11-11-2010
which signal will flush the file buffer in C/C++

which signal will flush the file buffer in C/C++?
eg. send a signal to flush all the file buffer to a file/stdout with out invoking fflush().
-INT, -TERM?
someone please help me, thanks in advance!
waiting online...

Last edited by jackliang; 11-11-2010 at 07:05 AM..
# 2  
Old 11-11-2010
Quote:
Originally Posted by jackliang
which signal will flush the file buffer in C/C++?
eg. send a signal to flush all the file buffer to a file/stdout which out invoking fflush().
That's an unusual question... why?

There is no signal to specifically flush all buffers, unless (i) a particular application includes a facility for specifically doing that or (ii) you don't mind terminating the program, in which case any signal that causes normal termination will flush buffers before exiting. See "man 7 signal".
This User Gave Thanks to JohnGraham For This Post:
# 3  
Old 11-11-2010
Quote:
Originally Posted by JohnGraham
That's an unusual question... why?

There is no signal to specifically flush all buffers, unless (i) a particular application includes a facility for specifically doing that or (ii) you don't mind terminating the program, in which case any signal that causes normal termination will flush buffers before exiting. See "man 7 signal".
en, I mean flush the buffer and then terminate the process.
sometime, some log info will miss if sending a -TERM signal.
# 4  
Old 11-11-2010
Your application has to handle what occurs when it gets a TERM signal otherwise the default behavior occurs.
This User Gave Thanks to fpmurphy For This Post:
# 5  
Old 11-11-2010
yes, then what is the defaut behavior in detail of threse signals?
for example, the default action of TERM is to terminate the process, then my question is what the detail procedures of the default action are , will it do something extra before actually killing the process?
# 6  
Old 11-11-2010
yes, then what is the defaut behavior in detail of threse signals?
for example, the default action of TERM is to terminate the process, then my question is what the detail procedures of the default action are , will it do something extra before actually killing the process?
# 7  
Old 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:
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Command to flush specific domain in SunOS 5 DNS

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

2. Emergency UNIX and Linux Support

DNS flush is not working

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

3. UNIX for Dummies Questions & Answers

How to check the buffer size of a file?

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

4. Programming

Why must flush all line-buffered output streams?

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

5. Linux

sed couldn't flush stdout no space left on device

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. Shell Programming and Scripting

flush the mail queue

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

7. Programming

Store file into a buffer to send it through a socket

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

8. Filesystems, Disks and Memory

hdparm + HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl

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

9. HP-UX

lp print flush

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
Login or Register to Ask a Question

Featured Tech Videos