Fork me on GitHub

How to work with signals?

Gentoo Mono Handbook
 
http://stackoverflow.com/a/216617/1709408
To receive notifications in the Unix way, that is using signals, you want to use the Mono.Unix.UnixSignal for each signal that you plan on receiving and then call UnixSignal.WaitAny () on an array of signals.
You would typically do this on a separate thread.

www.mono-project.com/docs/faq/technical/#can-i-use-signal-handlers-with-mono
UnixSignal is the supported mechanism in Mono for receiving signals as it will not interfere with the runtime and isolates the developer from the finer complexity of signal handling in Unix.

http://stackoverflow.com/a/11134892/1709408
Signals are intended to provide a rudimentary form of control over a process, not as an IPC mechanism. Signals have several issues when used as anything else:

You might theoretically be able set up some kind of channel using several signals going back and forth, with some acting like some sort of acknowledgement, but no sane person would want to attempt something like that. You might as well use smoke signals instead...