10-08-2001
Gee, thanks for the kind words guys!
No, you cannot just assume the next pid will be the current pid +1. You're on a multi-user machine. Stuff like cron runs all the time. If someone else forks first, they get the next pid. Also in a multi-cpu system, each cpu will usually reserve a chunk of 10 or so pids at once to cut down on spinlocks. Finally, pids recycle after pid 32,000.
The worst consequence of the sleep program in the background is that it is consuming a proc table entry. Too many of these and eventually you bump into maxuprc and cannot fork anymore. As long as that was not an issue, I'd just let it run. Remember that it will take code to remember or find the pid and then kill the pid. The load that this code would put on the system is trivial, but the only payback is the early death of a sleep statement...it can't make a profit.
If you really got to nail that last sleep process, a "kill $(ps -f | grep [s]leep |awk '{print $2}')" should get it.
7 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I am trying to develop a script that will properly handle kill signals particularly kill -2. I have program (_progres) that properly receives the signal if I run it from the command line directly:
_progres -T /tmp -p /home/mejones/signal.p -b 2>&1 &
If I try to put it in a script (i.e.... (2 Replies)
Discussion started by: mejones99
2 Replies
2. Programming
We have written a deamon which have many threads.
We are registering for the SIGTERM and trying to close main thread in this signal handling. Actually these are running on Mac OS X ( BSD unix). When we are unloading the deamon with command launchctl, it's sending SIGTERM signal to our process... (1 Reply)
Discussion started by: Akshay4u
1 Replies
3. Programming
I'm writing a function right now, and I want to set an alarm to avoid a timeout, here's the general idea of my code:
int amt = -2;
alarm(10);
amt = read(fd, &t->buf, TASKBUFSIZ - tailpos); //do a read
when the alarm goes off, i want to check the value of "amt"
... (1 Reply)
Discussion started by: liaobert
1 Replies
4. Solaris
I've read the man page of singal(3) but I still can't quite understand what is the difference between SIGINT, SIGALRM and SIGTERM.
Can someone tell me what is the behavioral difference among these 3 signals in kill command?
Thanks! (2 Replies)
Discussion started by: joe228
2 Replies
5. Shell Programming and Scripting
Hello everybody,
I have a little problem with one of my program. I made a plugin for collectd (a stats collector for my servers) but I have a problem to make it run in parallel.
My program gathers stats from logs, so it needs to run in background waiting for any new lines added in the log... (0 Replies)
Discussion started by: Samb95
0 Replies
6. Programming
Hello,
I extracted a list of files in a directory with the command ls . However this is not my computer, so the ls functionality has been revamped so that it gives the filesizes in front like this :
This is the output of ls command : I stored the output in a file filelist
1.1M... (5 Replies)
Discussion started by: ajayram
5 Replies
7. Shell Programming and Scripting
Is it possible to continue after signal is caught and control goes to function specified in the trap statement? (3 Replies)
Discussion started by: Soham
3 Replies
LEARN ABOUT DEBIAN
swac-get
SWAC-GET(1) General Commands Manual SWAC-GET(1)
NAME
swac-get - audio collections of words (SWAC) manager
SYNOPSIS
swac-get [-t] [clear] [update] | [upgrade] | [select <url|packid>] | [deselect <url|packid>] | [list] | [list-sources] | [list-available] |
[sql <query>] | [--help] | [--version]
DESCRIPTION
Swac-get is a simple command line program which allows to download and install audio collections of words (SWAC) in a SQLite3 database.
Audio collections can be imported from the hard drive or directly from the Internet using the HTTP protocol. Swac-get is designed to be
used with swac-explore, a GTK+ interface which allows the browsing of the created SQLite3 database. An important set of free audio collec-
tions of words (SWAC) is available at: http://swac-collections.org/
For more information, please, visit the Shtooka Project homepage at: http://shtooka.net/ .
COMMANDS
clear clear database
deselect <url|packid>
delete records of the package <url|packid> from the database
list list installed packages
list-available
list available packages
list-sources
list source repositories
sql <query>
execute a sql query in the database
select <url|packid>
insert records of the package <url|packid> in the database
ex: swac-get select file:///home/<my directory>/
swac-get select http://packs.shtooka.net/<my package>/ogg/
swac-get select fra-balm-voc
select source-delete <url>
delete <url> from the repositories list
source-deselect <url>
deselect <url> from the repositories list
source-select <url>
add <url> to the repositories list
ex: swac-get source-select http://packs.shtooka.net/
swac-get source-select file:///home/<my directory>/
update update the list of available packages
upgrade
upgrade installed packages
OPTIONS
-t, --target <path>
set the SQLite3 database path (default path is ~/.swac/swac.db)
-v, --version
print version information and exit
-h, --help
print this help and exit
EXAMPLES
swac-get source-select http://packs.shtooka.net/
swac-get update
swac-get select chi-balm-hsk1
swac-get select fra-balm-voc
BUGS
swac-get doesn't care about the version number for the upgrade command.
AUTHOR
swac-get and this manual page were written by Nicolas Vion <nico@picapo.net>.
mai 25, 2008 SWAC-GET(1)