- java.lang.Object
-
- de.ibapl.jnhw.posix.Signal
-
@Include("#include <signal.h>") public class Signal extends Object
Wrapper around the<signal.h>header. See specs at: signal.h - signals.- Author:
- aploese
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSignal.Mcontext_tPOSIX:typedef mcontext_t.static classSignal.Sigaction<T extends OpaqueMemory32>POSIX:structure sigaction.static classSignal.Sigevent<T extends OpaqueMemory32>POSIX:structure sigevent.static classSignal.Siginfo_t<T extends OpaqueMemory32>POSIX:structure siginfo_t.static classSignal.Sigset_tstatic classSignal.Sigval<T extends OpaqueMemory32>POSIX:structure sigval.static classSignal.Stack_t<T extends OpaqueMemory32>POSIX:structure stack_t.static classSignal.Ucontext_tPOSIX:structure ucontext_t.
-
Field Summary
Fields Modifier and Type Field Description static intBUS_ADRALNPOSIX:SIGBUSInvalid address alignment.static intBUS_ADRERRPOSIX:SIGBUSNonexistent physical address.static intBUS_OBJERRPOSIX:SIGBUSObject-specific hardware error.static intCLD_CONTINUEDPOSIX:SIGCHLDStopped child has continued.static intCLD_DUMPEDPOSIX:SIGCHLDChild has terminated abnormally and created a core file.static intCLD_EXITEDPOSIX:SIGCHLDChild has exited.static intCLD_KILLEDPOSIX:SIGCHLDChild has terminated abnormally and did not create a core file.static intCLD_STOPPEDPOSIX:SIGCHLDChild has stopped.static intCLD_TRAPPEDPOSIX:SIGCHLDTraced child has trapped.static intFPE_FLTDIVPOSIX:SIGFPEFloating -point divide by zero.static intFPE_FLTINVPOSIX:SIGFPEInvalid floating-point operation.static intFPE_FLTOVFPOSIX:SIGFPEFloating-point overflow.static intFPE_FLTRESPOSIX:SIGFPEFloating-point inexact result.static intFPE_FLTSUBPOSIX:SIGFPESubscript out of range.static intFPE_FLTUNDPOSIX:SIGFPEFloating-point underflow.static intFPE_INTDIVPOSIX:SIGFPEInteger divide by zero.static intFPE_INTOVFPOSIX:SIGFPEInteger overflow.static booleanHAVE_SIGNAL_Hstatic intILL_BADSTKPOSIX:SIGILLInternal stack error.static intILL_COPROCPOSIX:SIGILLCoprocessor error.static intILL_ILLADRPOSIX:SIGILLIllegal operand.static intILL_ILLOPCPOSIX:SIGILLIllegal opcode.static intILL_ILLOPNPOSIX:SIGILLIllegal addressing mode.static intILL_ILLTRPPOSIX:SIGILLIllegal trap.static intILL_PRVOPCPOSIX:SIGILLPrivileged opcode.static intILL_PRVREGPOSIX:SIGILLPrivileged register.static intMINSIGSTKSZPOSIX: Minimum stack size for a signal handler.static IntDefinePOLL_ERRPOSIX:SIGPOLLI/O error.static IntDefinePOLL_HUPPOSIX:SIGPOLLDevice disconnected.static IntDefinePOLL_INPOSIX:SIGPOLLData input available.static IntDefinePOLL_MSGPOSIX:SIGPOLLInput message available.static IntDefinePOLL_OUTPOSIX:SIGPOLLOutput buffers available.static IntDefinePOLL_PRIPOSIX:SIGPOLLHigh priority input available.static intSA_NOCLDSTOPPOSIX: Do not generate SIGCHLD when children stop or stopped children continuestatic intSA_NOCLDWAITPOSIX: Causes implementations not to create zombie processes or status information on child termination.static intSA_NODEFERPOSIX: Causes signal not to be automatically blocked on entry to signal handler.static intSA_ONSTACKPOSIX: Causes signal delivery to occur on an alternate stack.static intSA_RESETHANDPOSIX: Causes signal dispositions to be set to SIG_DFL on entry to signal handlers.static intSA_RESTARTPOSIX: Causes certain functions to become restartable.static intSA_SIGINFOPOSIX: Causes extra information to be passed to signal handlers at the time of receipt of a signal.static intSEGV_ACCERRPOSIX:SIGSEGVInvalid permissions for mapped object.static intSEGV_MAPERRPOSIX:SIGSEGVAddress not mapped to object.static IntDefineSI_ASYNCIOPOSIX: Signal generated by completion of an asynchronous I/O request.static IntDefineSI_MESGQPOSIX: Signal generated by arrival of a message on an empty message.static intSI_QUEUEPOSIX: Signal sent by sigqueue().static intSI_TIMERPOSIX: Signal generated by expiration of a timer set by timer_settime().static intSI_USERPOSIX: Signal sent by kill().static intSIG_BLOCKPOSIX: The resulting set is the union of the current set and the signal set pointed to by the argument set.static FunctionPtr_I_VSIG_DFLPOSIX: Request for default signal handling.static FunctionPtr_I_VSIG_ERRPOSIX: Return value from signal() in case of error.static ObjectDefine<FunctionPtr_I_V>SIG_HOLDPOSIX: Request that signal be held.static FunctionPtr_I_VSIG_IGNPOSIX: Request that signal be ignored.static intSIG_SETMASKPOSIX: The resulting set is the signal set pointed to by the argument set.static intSIG_UNBLOCKPOSIX: The resulting set is the intersection of the current set and the complement of the signal set pointed to by the argument set.static intSIGABRTPOSIX:Abnormal termination of the process with additional actions Process abort signal.static intSIGALRMPOSIX:Abnormal termination of the process Alarm clock.static intSIGBUSPOSIX:Abnormal termination of the process with additional actions Access to an undefined portion of a memory object.static intSIGCHLDPOSIX:Ignore the signal Child process terminated, stopped, or continued.static intSIGCONTPOSIX:Continue the process, if it is stopped; otherwise, ignore the signal. Continue executing , if stopped.static IntDefineSIGEV_NONEPOSIX: No asynchronous notification is delivered when the event of interest occurs.static IntDefineSIGEV_SIGNALPOSIX: A queued signal , with an application -defined value, is generated when the event of interest occurs.static IntDefineSIGEV_THREAD* POSIX: A notification function is called to perform notification.static intSIGFPEPOSIX:Abnormal termination of the process with additional actions Erroneous arithmetic operation.static intSIGHUPPOSIX:Abnormal termination of the process Hangup.static intSIGILLPOSIX:Abnormal termination of the process with additional actions Illegal instruction.static intSIGINTPOSIX:Abnormal termination of the process Terminal interrupt signal.static intSIGKILLPOSIX:Abnormal termination of the processKill(cannot be caught or ignored).static intSIGPIPEPOSIX:Abnormal termination of the process Write on a pipe with no one to read it.static IntDefineSIGPOLLPOSIX:Abnormal termination of the process Pollable event.static intSIGPROFPOSIX:Abnormal termination of the process Profiling timer expired.static intSIGQUITPOSIX:Abnormal termination of the process with additional actions Terminal quit signal.static intSIGSEGVPOSIX:Abnormal termination of the process with additional actions Invalid memory reference.static intSIGSTKSZPOSIX: Default size in bytes for the alternate signal stack.static intSIGSTOPPOSIX:Stop the process Stop executing(cannot be caught or ignored).static intSIGSYSPOSIX:Abnormal termination of the process with additional actions Bad system call.static intSIGTERMPOSIX:Abnormal termination of the process Termination signal.static intSIGTRAPPOSIX:Abnormal termination of the process with additional actions Trace /breakpoint trap.static intSIGTSTPPOSIX:Stop the process Terminal stop signal.static intSIGTTINPOSIX:Stop the process Background process attempting read.static intSIGTTOUPOSIX:Stop the process Background process attempting write.static intSIGURGPOSIX:Ignore the signal High bandwidth data is available at a socket.static intSIGUSR1POSIX:Abnormal termination of the process User -defined signal 1.static intSIGUSR2POSIX:Abnormal termination of the process User -defined signal 2.static intSIGVTALRMPOSIX:Abnormal termination of the process Virtual timer expired.static intSIGXCPUPOSIX:Abnormal termination of the process with additional actions CPU time limit exceeded.static intSIGXFSZPOSIX:Abnormal termination of the process with additional actions File size limit exceeded.static intSS_DISABLEPOSIX: Alternate signal stack is disabled.static intSS_ONSTACKPOSIX: Process is executing on an alternate signal stack.static intTRAP_BRKPTPOSIX:SIGTRAPProcess breakpoint.static intTRAP_TRACEPOSIX:SIGTRAPProcess trace trap.
-
Constructor Summary
Constructors Constructor Description Signal()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidkill(int pid, int sig)static voidkillpg(int pgrp, int sig)static voidpsiginfo(Signal.Siginfo_t pinfo, String message)static voidpsignal(int signum, String message)static voidpthread_kill(Pthread.Pthread_t thread, int sig)static voidpthread_sigmask(int how, Signal.Sigset_t set, Signal.Sigset_t oset)static voidraise(int sig)static voidsigaction(int sig, Signal.Sigaction act, Signal.Sigaction oact)static voidsigaddset(Signal.Sigset_t set, int signo)static voidsigaltstack(Signal.Stack_t ss, Signal.Stack_t oss)static voidsigdelset(Signal.Sigset_t set, int signo)static voidsigemptyset(Signal.Sigset_t set)static voidsigfillset(Signal.Sigset_t set)static voidsighold(int sig)static voidsigignore(int sig)static voidsiginterrupt(int sig, boolean flag)static booleansigismember(Signal.Sigset_t set, int signo)static FunctionPtr_I_Vsignal(int sig, FunctionPtr_I_V func)POSIX: signal - signal management.static StringsigNumber2String(int signalNumber)static voidsigpause(int sig)static voidsigpending(Signal.Sigset_t set)static voidsigprocmask(int how, Signal.Sigset_t set, Signal.Sigset_t oset)static voidsigqueue(int pid, int signo, Signal.Sigval value)static voidsigrelse(int sig)static FunctionPtr_I_Vsigset(int sig, FunctionPtr_I_V disp)static voidsigsuspend(Signal.Sigset_t sigmask)POSIX: sigsuspend - wait for a signal.static intsigtimedwait(Signal.Sigset_t set, Signal.Siginfo_t info, Time.Timespec timeout)static intsigwait(Signal.Sigset_t set)static intsigwaitinfo(Signal.Sigset_t set, Signal.Siginfo_t info)
-
-
-
Field Detail
-
HAVE_SIGNAL_H
public static final boolean HAVE_SIGNAL_H
-
SIG_DFL
@Define public static final FunctionPtr_I_V SIG_DFL
POSIX: Request for default signal handling.
-
SIG_ERR
@Define public static final FunctionPtr_I_V SIG_ERR
POSIX: Return value from signal() in case of error.
-
SIG_HOLD
@Define public static final ObjectDefine<FunctionPtr_I_V> SIG_HOLD
POSIX: Request that signal be held.
-
SIG_IGN
@Define public static final FunctionPtr_I_V SIG_IGN
POSIX: Request that signal be ignored.
-
SIGEV_NONE
@Define public static final IntDefine SIGEV_NONE
POSIX: No asynchronous notification is delivered when the event of interest occurs.
-
SIGEV_SIGNAL
@Define public static final IntDefine SIGEV_SIGNAL
POSIX: A queued signal , with an application -defined value, is generated when the event of interest occurs.
-
SIGEV_THREAD
@Define public static final IntDefine SIGEV_THREAD
* POSIX: A notification function is called to perform notification.
-
SIGABRT
@Define public static final int SIGABRT
POSIX:Abnormal termination of the process with additional actions Process abort signal.
-
SIGALRM
@Define public static final int SIGALRM
POSIX:Abnormal termination of the process Alarm clock.
-
SIGBUS
@Define public static final int SIGBUS
POSIX:Abnormal termination of the process with additional actions Access to an undefined portion of a memory object.
-
SIGCHLD
@Define public static final int SIGCHLD
POSIX:Ignore the signal Child process terminated, stopped, or continued.
-
SIGCONT
@Define public static final int SIGCONT
POSIX:Continue the process, if it is stopped; otherwise, ignore the signal. Continue executing , if stopped.
-
SIGFPE
@Define public static final int SIGFPE
POSIX:Abnormal termination of the process with additional actions Erroneous arithmetic operation.
-
SIGHUP
@Define public static final int SIGHUP
POSIX:Abnormal termination of the process Hangup.
-
SIGILL
@Define public static final int SIGILL
POSIX:Abnormal termination of the process with additional actions Illegal instruction.
-
SIGINT
@Define public static final int SIGINT
POSIX:Abnormal termination of the process Terminal interrupt signal.
-
SIGKILL
@Define public static final int SIGKILL
POSIX:Abnormal termination of the processKill(cannot be caught or ignored).
-
SIGPIPE
@Define public static final int SIGPIPE
POSIX:Abnormal termination of the process Write on a pipe with no one to read it.
-
SIGQUIT
@Define public static final int SIGQUIT
POSIX:Abnormal termination of the process with additional actions Terminal quit signal.
-
SIGSEGV
@Define public static final int SIGSEGV
POSIX:Abnormal termination of the process with additional actions Invalid memory reference.
-
SIGSTOP
@Define public static final int SIGSTOP
POSIX:Stop the process Stop executing(cannot be caught or ignored).
-
SIGTERM
@Define public static final int SIGTERM
POSIX:Abnormal termination of the process Termination signal.
-
SIGTSTP
@Define public static final int SIGTSTP
POSIX:Stop the process Terminal stop signal.
-
SIGTTIN
@Define public static final int SIGTTIN
POSIX:Stop the process Background process attempting read.
-
SIGTTOU
@Define public static final int SIGTTOU
POSIX:Stop the process Background process attempting write.
-
SIGUSR1
@Define public static final int SIGUSR1
POSIX:Abnormal termination of the process User -defined signal 1.
-
SIGUSR2
@Define public static final int SIGUSR2
POSIX:Abnormal termination of the process User -defined signal 2.
-
SIGPOLL
@Define public static final IntDefine SIGPOLL
POSIX:Abnormal termination of the process Pollable event.
-
SIGPROF
@Define public static final int SIGPROF
POSIX:Abnormal termination of the process Profiling timer expired.
-
SIGSYS
@Define public static final int SIGSYS
POSIX:Abnormal termination of the process with additional actions Bad system call.
-
SIGTRAP
@Define public static final int SIGTRAP
POSIX:Abnormal termination of the process with additional actions Trace /breakpoint trap.
-
SIGURG
@Define public static final int SIGURG
POSIX:Ignore the signal High bandwidth data is available at a socket.
-
SIGVTALRM
@Define public static final int SIGVTALRM
POSIX:Abnormal termination of the process Virtual timer expired.
-
SIGXCPU
@Define public static final int SIGXCPU
POSIX:Abnormal termination of the process with additional actions CPU time limit exceeded.
-
SIGXFSZ
@Define public static final int SIGXFSZ
POSIX:Abnormal termination of the process with additional actions File size limit exceeded.
-
SIG_BLOCK
@Define public static final int SIG_BLOCK
POSIX: The resulting set is the union of the current set and the signal set pointed to by the argument set.
-
SIG_UNBLOCK
@Define public static final int SIG_UNBLOCK
POSIX: The resulting set is the intersection of the current set and the complement of the signal set pointed to by the argument set.
-
SIG_SETMASK
@Define public static final int SIG_SETMASK
POSIX: The resulting set is the signal set pointed to by the argument set.
-
SA_NOCLDSTOP
@Define public static final int SA_NOCLDSTOP
POSIX: Do not generate SIGCHLD when children stop or stopped children continue
-
SA_ONSTACK
@Define public static final int SA_ONSTACK
POSIX: Causes signal delivery to occur on an alternate stack.
-
SA_RESETHAND
@Define public static final int SA_RESETHAND
POSIX: Causes signal dispositions to be set to SIG_DFL on entry to signal handlers.
-
SA_RESTART
@Define public static final int SA_RESTART
POSIX: Causes certain functions to become restartable.
-
SA_SIGINFO
@Define public static final int SA_SIGINFO
POSIX: Causes extra information to be passed to signal handlers at the time of receipt of a signal.
-
SA_NOCLDWAIT
@Define public static final int SA_NOCLDWAIT
POSIX: Causes implementations not to create zombie processes or status information on child termination. See sigaction.
-
SA_NODEFER
@Define public static final int SA_NODEFER
POSIX: Causes signal not to be automatically blocked on entry to signal handler.
-
SS_ONSTACK
@Define public static final int SS_ONSTACK
POSIX: Process is executing on an alternate signal stack.
-
SS_DISABLE
@Define public static final int SS_DISABLE
POSIX: Alternate signal stack is disabled.
-
MINSIGSTKSZ
@Define public static final int MINSIGSTKSZ
POSIX: Minimum stack size for a signal handler.
-
SIGSTKSZ
@Define public static final int SIGSTKSZ
POSIX: Default size in bytes for the alternate signal stack.
-
FPE_FLTINV
@Define public static final int FPE_FLTINV
POSIX:SIGFPEInvalid floating-point operation.
-
SEGV_ACCERR
@Define public static final int SEGV_ACCERR
POSIX:SIGSEGVInvalid permissions for mapped object.
-
CLD_KILLED
@Define public static final int CLD_KILLED
POSIX:SIGCHLDChild has terminated abnormally and did not create a core file.
-
CLD_DUMPED
@Define public static final int CLD_DUMPED
POSIX:SIGCHLDChild has terminated abnormally and created a core file.
-
CLD_CONTINUED
@Define public static final int CLD_CONTINUED
POSIX:SIGCHLDStopped child has continued.
-
POLL_PRI
@Define public static final IntDefine POLL_PRI
POSIX:SIGPOLLHigh priority input available.
-
SI_USER
@Define public static final int SI_USER
POSIX: Signal sent by kill().
-
SI_QUEUE
@Define public static final int SI_QUEUE
POSIX: Signal sent by sigqueue().
-
SI_TIMER
@Define public static final int SI_TIMER
POSIX: Signal generated by expiration of a timer set by timer_settime().
-
SI_ASYNCIO
@Define public static final IntDefine SI_ASYNCIO
POSIX: Signal generated by completion of an asynchronous I/O request.
-
-
Method Detail
-
sigNumber2String
public static String sigNumber2String(int signalNumber)
-
kill
public static final void kill(int pid, int sig) throws NativeErrorException- Parameters:
pid- the pid to which the signal is send.sig- the signal to send.- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
killpg
public static final void killpg(int pgrp, int sig) throws NativeErrorException- Parameters:
pgrp- the group pid to which the signal is send.sig- the signal to send.- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
psiginfo
public static final void psiginfo(Signal.Siginfo_t pinfo, String message) throws NativeErrorException, NoSuchNativeMethodException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method psiginfo is not available natively.
-
psignal
public static final void psignal(int signum, String message) throws NativeErrorException- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
pthread_kill
public static final void pthread_kill(Pthread.Pthread_t thread, int sig) throws NativeErrorException, NoSuchNativeMethodException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method pthread_kill is not available natively.
-
pthread_sigmask
public static final void pthread_sigmask(int how, Signal.Sigset_t set, Signal.Sigset_t oset) throws NativeErrorException- Parameters:
how- indicates the way in which the set is changed. SIG_BLOCK SIG_SETMASK SIG_UNBLOCKset- the mask to setoset- if notnullit receives the old mask.- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
raise
public static final void raise(int sig) throws NativeErrorException- Parameters:
sig- the signal to send.- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigaction
public static final void sigaction(int sig, Signal.Sigaction act, Signal.Sigaction oact) throws NativeErrorException- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigaddset
public static final void sigaddset(Signal.Sigset_t set, int signo) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigaltstack
public static final void sigaltstack(Signal.Stack_t ss, Signal.Stack_t oss) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigdelset
public static final void sigdelset(Signal.Sigset_t set, int signo) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigemptyset
public static final void sigemptyset(Signal.Sigset_t set) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigfillset
public static final void sigfillset(Signal.Sigset_t set) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sighold
public static final void sighold(int sig) throws NativeErrorException, NoSuchNativeMethodException- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sighold is not available natively.
-
sigignore
public static final void sigignore(int sig) throws NativeErrorException, NoSuchNativeMethodException- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigignore is not available natively.
-
siginterrupt
public static final void siginterrupt(int sig, boolean flag) throws NativeErrorException- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigismember
public static final boolean sigismember(Signal.Sigset_t set, int signo) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
signal
public static final FunctionPtr_I_V signal(int sig, FunctionPtr_I_V func) throws NativeErrorException
POSIX: signal - signal management.- Parameters:
sig-func-- Returns:
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigpause
public static final void sigpause(int sig) throws NativeErrorException, NoSuchNativeMethodException- Throws:
NativeErrorException- if the return value of the native function is -1 and errno is other than EINTR.NoSuchNativeMethodException- if the method sigpause is not available natively.
-
sigpending
public static final void sigpending(Signal.Sigset_t set) throws NativeErrorException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigprocmask
public static final void sigprocmask(int how, Signal.Sigset_t set, Signal.Sigset_t oset) throws NativeErrorException- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigqueue
public static final void sigqueue(int pid, int signo, Signal.Sigval value) throws NativeErrorException, NoSuchNativeMethodException- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigqueue is not available natively.
-
sigrelse
public static final void sigrelse(int sig) throws NativeErrorException, NoSuchNativeMethodException- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigrelse is not available natively.
-
sigset
public static final FunctionPtr_I_V sigset(int sig, FunctionPtr_I_V disp) throws NativeErrorException, NoSuchNativeMethodException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigset is not available natively.
-
sigsuspend
public static final void sigsuspend(Signal.Sigset_t sigmask) throws NativeErrorException
POSIX: sigsuspend - wait for a signal.- Throws:
NativeErrorException- if the return value of the native function is -1 an errno is other than EINTR.
-
sigtimedwait
public static final int sigtimedwait(Signal.Sigset_t set, Signal.Siginfo_t info, Time.Timespec timeout) throws NativeErrorException, NoSuchNativeMethodException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigtimedwait is not available natively.
-
sigwait
public static final int sigwait(Signal.Sigset_t set) throws NativeErrorException
- Parameters:
set-- Returns:
- the signal number of the received signal.
- Throws:
NativeErrorException- if the return value of the native function indicates an error.
-
sigwaitinfo
public static final int sigwaitinfo(Signal.Sigset_t set, Signal.Siginfo_t info) throws NativeErrorException, NoSuchNativeMethodException
- Throws:
NativeErrorException- if the return value of the native function indicates an error.NoSuchNativeMethodException- if the method sigwaitinfo is not available natively.
-
-