ecx |
Pointer to a properly initialized sigevent structure. If ecx is 0
then no notification occurs when timer expires.
struc sigevent
{
.sigev_value sigval
.sigev_signo rd 1
.sigev_notify rd 1
._tid: ;rd 1
._sigev_thread: ;sigev_thread
._pad rd 13
}
struc sigev_thread
{
._function rd 1
._attribute rd 1
}
struc sigval
{
.sival_int: ;rd 1
.sival_ptr rd 1
} |
sigevent members:
sigev_value
Data passed with notification.
sigev_signo
Notification signal.
sigev_notify
Notification method. If sigev_notify is a non-NULL pointer, then sys_mq_notify registers the calling process to receive message notification. If sigev_notify is NULL, and the calling process is currently registered to receive notifications for this message queue, then the registration is removed; another process can then register to receive a message notification for this queue.
Following notification are supported:
SIGEV_NONE |
A "null" notification: the calling process is registered as the target for notification, but when a message arrives, no notification is sent. |
SIGEV_SIGNAL |
Notify the process by sending the signal specified in sigev_signo. If the signal is caught with a signal handler that was registered using the sys_sigaction SA_SIGINFO flag, then the following fields are set in the siginfo_t structure that is passed as the second argument of the handler: si_code is set to SI_MESGQ; si_signo is set to the signal number; si_value is set to the value specified in sigev_value; si_pid is set to the PID of the process that sent the message; and si_uid is set to the real user ID of the sending process. |
SIGEV_THREAD |
Deliver notification by invoking _function as the start function of a new thread. The function is invoked with sigev_value as its sole argument. If _attribute is not NULL, then it should point to a pthread_attr_t structure that defines attributes for the thread.
pthread_attr_t defined as follows: |
|
_tid
*to be documented*
_function
Pointer to the function for thread notification.
_attribute
Pointer to the thread function attributes.
|