红联Linux门户
Linux帮助

程序系统资源占用率过高的问题

发布时间:2009-05-21 10:59:44来源:红联作者:ewolfe
15:38:31 %usr %sys %wio %idle (-u)
15:38:32 0 0 0 100
15:38:33 0 0 0 100
15:38:34 0 4 58 38
15:38:35 0 1 99 0
15:38:36 0 4 25 71
15:38:37 0 0 0 100
15:38:38 0 11 0 89
15:38:39 0 1 0 99
15:38:40 0 0 0 100
15:38:41 0 4 32 64
15:38:42 0 0 100 0
15:38:43 0 0 100 0
15:38:44 0 2 48 50
15:38:45 0 0 0 100
15:38:46 0 12 0 88

程序:

timer
{
fun; //时间到调用的函数
interval; //时间间隔
remain; //剩余时间
}
signal(SIGALARM, TimFun)
alarm(1)

timer Tim[MAX];
TimFun()
{
for(i = 0; i < MAX ; i++)
{
Tim[i].remain--;
if (Tim[i].remain <= 0)
{
Run(Tim[i]. fun ); //定时到调用函数
Tim[i]. remain =Tim[i]. interval //重置
}
signal(SIGALARM, TimFun);
alarm(1);
}


请问这主要是什么原因造成的资源使用高!!(应该不是被调用函数Tim[i].fun的原因, 因为用另一种方法调起所有的fun后在fun里死循环+sleep 就不会有这么高的资源使用)
文章评论

共有 0 条评论