i
traisei
tsig
okill的pid参数有四种不同的情况:1、pid0将信号发送给进程ID为pid的进程。2、pid0将信号发送给同组的进程。3、pid0将信号发送给其进程组ID等于pid绝对值的进程。4、pid-1将信号发送给所有进程。使用alarm函数可以设置一个时间值闹钟时间,当所设置的时间到了时,产生
fSIGALRM信号。如果不捕捉此信号,则默认动作是终止该进程。i
cludeu
istdhu
sig
edi
talarmu
sig
edi
tseco
dsSeco
ds:经过了指定的seco
ds秒后会产生信号SIGALRM。每个进程只能有一个闹钟时间。如果在调用alarm时,以前已为该进程设置过闹钟时间,而且它还没有超时,以前登记的闹钟时间则被新值代换。如果有以前登记的尚未超过的闹钟时间,而这次seco
ds值是0,则表示取消以前的闹钟。pause函数使调用进程挂起直至捕捉到一个信号。i
cludeu
istdhi
tpausevoid只有执行了一个信号处理函数后,挂起才结束。当系统捕捉到某个信号时,可以忽略该信号或是使用指定的处理函数来处理该信号,或者使用系统默认的方式。信号处理的主要方法有两种,一种是使用简单的sig
al函数,另一种是使用信号集函数组。i
cludesig
alhvoidsig
ali
tsig
ovoidfu
ci
ti
t如何理解?typedefvoidsigha
dler_ti
tsigha
dler_tsig
ali
tsig
umsigha
dler_tha
dlerFu
c可能的值是:1、SIG_IGN:忽略此信号2、SIG_DFL按系统默认方式处理3、信号处理函数名:使用该函数处理共享内存是被多个进程共享的一部分物理内存。共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。
f共享内存实现分为两个步骤一、创建共享内存,使用shmget函数。二、映射共享内存,将这段创建的共享内存映射到具体的进程空间去,使用shmat函数i
tshmgetkey_tkeyi
tsizei
tshmflgkey标识共享内存的键值0IPC_PRIVATE。当key的取值为IPC_PRIVATE,则函数shmget将创建一块新的共享内存;如果key的取值为0,而参数shmflg中又设置IPC_PRIVATE这个标志,则同样会创建一块新的共享内存。返回值:如果成功,返回共享内存标识符;如果失败,返回1。i
tshmati
tshmidcharshmaddri
tflag参数:shmid:shmget函数返回的共享存储标识符flag:决定以什么方式来确定映射的地址(通常为0)返回值:如果成功,则返回共享内存映射到进程中的地址;如果失败,则返回1。当一个进程不再需要共享内存时,需要把它从进程地址空间中脱离。i
tshmdtcharshmaddr消息队列就是一个消息的链表。可以把消息看作一个记录,具有r