Defining Custom Signal


 
Thread Tools Search this Thread
Top Forums Programming Defining Custom Signal
# 8  
Old 07-29-2009
You should not use old-style signal() handling together with sigprocmask(); the latter is part of a new set of functions that eclipse signal() entirely. sigaction() is the modern equivalent. It can be told to keep receiving a signal instead of needing to be reset every time. You shouldn't need to change the signal mask, I think, unless you need to block a signal, it should let them through by default.
# 9  
Old 07-29-2009
I have removed the mask and switched to sigaction. The SIGINT problem still exists.

If I send SIGINT, then send SIGUSR1 and start using Python, it interrupts the Python instead of the C (even if I wait several seconds between sending SIGINT and SIGUSR1).
# 10  
Old 07-29-2009
? Interrupts the pyton?

What command are you using to send the signal to the process? That it should kill the wrong one is quite bizzare.
# 11  
Old 07-29-2009
I'm using the kill function (man 2 kill). I wrote a C function to grab the PID from test.RUN, write the action file, and send SIGUSR1. I call this from a separate Python process.

The Python interpreter is embedded in my executable. Maybe Python defines it's own signal handler for SIGINT (so it can print the traceback, etc.). But that would mean the signal is just sitting around until I call the Python interpreter.

Last edited by joha; 07-29-2009 at 08:29 PM..
# 12  
Old 07-30-2009
Python definitely screws with signals to the bone for various purposes, one of which is to make sure signals are caught between opcodes instead of during them. It'd be better to have the signal handling done in python if you're going to use it.
# 13  
Old 07-30-2009
But I only use Python for a small part of my program. I need SIGINT to work when I'm in the C part of my code also.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Defining variable problem

Hi I'd say I'm having this weird problem where my script isn't taking the value off a variable or printing it. My code is like this: set count_C= `grep -c C mols` set count_H= `grep -c H mols` set count_O= `grep -c O mols` sed -i '7,7 s/$/ $count_C $count_O $count_H/g' input It... (8 Replies)
Discussion started by: saleheen
8 Replies

2. Programming

Problem defining a struct

I have the following code and getting the compilation errors baseLib/DynBaseObj.h:80: error: expected constructor, destructor, or type conversion before ‘(' token baseLib/DynBaseObj.h:89: error: expected constructor, destructor, or type conversion before ‘(' token baseLib/DynBaseObj.h:101:... (0 Replies)
Discussion started by: kristinu
0 Replies

3. UNIX for Dummies Questions & Answers

Help with defining PATH

Hi All, I have a trivial question but I dont know how to solve it. So basically I'm working on a USB key and I have a directory with some scripts which I use to work on files present in other directories within the USB or sometimes on the main harddisk too. The problem is every time I have to... (3 Replies)
Discussion started by: pawannoel
3 Replies

4. UNIX for Dummies Questions & Answers

Defining an alias FreeBSD

I have defined this alias as quick way to find out which mount point to use for a USB drive after inserting it: # alias da='dmesg | grep da | grep MB' However, when invoking it, it states the following: # da da: Command not found. Can someone explain what is the issue here and how it can be... (3 Replies)
Discussion started by: figaro
3 Replies

5. UNIX for Dummies Questions & Answers

defining variable in .profile

In root dir i have created a .profile file and added variable and assigned a path to it: a = '/dir/dir' export a but when i echo (echo $a) the path or use this variable the value or path not getting displayed. i tried executing the .profile and logging out and logging in, didnt workout. am... (1 Reply)
Discussion started by: abhi_n123
1 Replies

6. Programming

Defining the inputStream object

Question regarding extend issue What is the reason behind defining the inputStream object in this way... InputStream inputStream = new FileInputStream("c:\\input.txt"); I know that FileInputStream extends InputStream, is there anything else ? I mean we could have define it like ... (0 Replies)
Discussion started by: yahyaaa
0 Replies

7. UNIX and Linux Applications

Problems with defining triggers

I am running the example from the following webpage: MySQL :: MySQL 5.0 Reference Manual :: 12.1.11 CREATE TRIGGER Syntax and the problem is that triggers cannot be defined for some reason: CREATE DATABASE IF NOT EXISTS triggertest; USE triggertest; CREATE TABLE test1(a1 INT); CREATE TABLE... (3 Replies)
Discussion started by: figaro
3 Replies

8. Shell Programming and Scripting

defining variables

Hey all, I was wondering if someone would take a look at this script I'm working on. I don't know if i have the syntax correct for my variables and if the for loop is written correctly. any assistance would be greatly appreciated. #!/usr/bin/bash ###########################################... (12 Replies)
Discussion started by: em23
12 Replies

9. AIX

defining a printer in qconfig

I've got a modified samba script (named it winprint) that I can use to print out to a to a shared Win Network printer from an AIX machine. This is a modification of the samba provided smbprint script changed to work under AIX as the backend for a queue. It does not read a config file I can print... (0 Replies)
Discussion started by: matheeq
0 Replies

10. UNIX for Dummies Questions & Answers

Defining Variables

I'm trying to define a variable named sin I already have a variable named cos, which has the value "hello" I want sin to have the value of "hellothere", so sin would be something like sin = $cos & "there" but I'm not sure that I know the syntax. Can anyone help? :confused: (4 Replies)
Discussion started by: sailorliones
4 Replies
Login or Register to Ask a Question