#include 2 c% o0 ^# ~: A7 ^: n0 ~( s4 `
@6 m/ a# a0 n p" I; R
#include //内有alarm函数: [* N- F, p, Q3 R) q5 ^' w
9 h! R- h) f8 a& @3 H+ K #include //信号处理函数
9 y8 e* i0 A% n- x. f% ` , H5 \6 r: I3 Y& E& W: U
void usrt_intnet(int tmp)
, G# C3 o0 r% d# ?+ k a$ V( r$ q2 k
! n9 G& K8 G4 F5 B. _ {
- y* i8 i% L4 i2 L/ |2 W
& x6 }3 q3 n+ u0 u) j printf("10s is coming\n");5 C' d9 e5 y0 y7 ~0 p. q
9 [# }# a( d% R" y
}
. }5 ` `. m/ i3 L ( M$ D1 e) {. X7 d
int main()
' l4 q) y3 ~+ S) t p
1 c- n0 J/ P& `" u+ N% M+ U# `- L3 j {
R& A7 g* a1 p0 k) X 2 T1 U. Q8 D& B1 y
if(signal(SIGALRM,usrt_intnet) == SIG_ERR)
8 J" d+ L& T" Y7 K+ H
% P5 W q z% P$ I7 F/ {& O: f5 d {
, b, }0 ~4 o9 G4 ~ 4 K" ?. P2 e1 a( N! e9 m
printf("intnet is bad\n");6 A. M) j9 [. o
& U7 n6 s2 s5 W
}4 _1 @* j) L9 S' w
) J8 z/ ^' f2 t0 r: C
alarm(10);- s! T) E6 S. A/ S& p) B7 s
6 U6 c& E" N2 B$ w% H% C" y9 ? d while(1); v+ C- L* k$ T# H* z% F& K
- a. C9 ]3 S8 g0 G- A- j7 r s
{
! g4 t ]0 w) F9 Y7 f0 b% Z
7 A, y, u4 j& Y$ v& m ;! J8 G3 ~9 \- [# _
2 [( L8 W y7 l6 O }3 I* {9 B) p' L2 W; Z
' y, ?7 ^6 `6 Z0 R }
( c' H* Z' R" K( x3 r
2 a4 \7 T0 S y9 \, Y 注解:通过alarm函数设定秒级定时,10秒到后会产生信号SIGALRM,通过signal将信号重定向到usrt_intnet()函数,去执行想要的操作 |