QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1058|回复: 7

如何每10秒执行一个命令?

[复制链接]
发表于 2005-1-18 17:56:08 | 显示全部楼层 |阅读模式
显然不能用cron,shell脚本也不行,没有shell。

有没有现存的daemon,每过10秒就要运行一次某个命令~

比如我的手机里面每10秒寻找一下网络,如果是联网的则10秒过后再检测,如果不是连网的,则寻找网络~
发表于 2005-1-18 18:55:43 | 显示全部楼层
硬件解决..哈哈
回复

使用道具 举报

发表于 2005-1-18 21:10:11 | 显示全部楼层
10秒那么长时间用shell怎么会不行呢?当然C/C++肯定行的了。
回复

使用道具 举报

 楼主| 发表于 2005-1-19 08:41:34 | 显示全部楼层
google了好长时间,watch好像可以,但这个命令不支持log~~晕


楼上的,不准备使用Shell
回复

使用道具 举报

发表于 2005-1-19 11:04:05 | 显示全部楼层
[code:1]
int        init_Timer()
{
        struct itimerval timerv;
    struct sigaction siga;
   
    siga.sa_handler = Run;
    siga.sa_flags         = 0;
   
    m_iCount        = 0;
   
    memset(&siga.sa_mask, 0, sizeof(sigset_t));

    sigaction(TIME_SIGNAL, &siga, &m_oldalarm);

    timerv.it_interval.tv_sec          = 10;
    timerv.it_interval.tv_usec         = 0;
    timerv.it_value                       = timerv.it_interval;

    if (setitimer(ITIMER_REAL, &timerv, &m_oldtimer))
    {
        fprintf(stderr, "TIMER: setitimer call failed!\n");
        perror("setitimer");
    }
   
    return TIME_SUCCESS;
}[/code:1]
run就是你想要做的事情的函数。。。
回复

使用道具 举报

发表于 2005-1-19 11:05:11 | 显示全部楼层
这个是我从我的一个程序里面抄出来的,m_开头的都是类的成员。。。
回复

使用道具 举报

 楼主| 发表于 2005-1-19 13:42:59 | 显示全部楼层
谢谢!

还是想找一个系统运行的daemon

像dhcp这种东西也应该是不停的寻找网络的~
回复

使用道具 举报

发表于 2005-1-21 08:54:55 | 显示全部楼层
DHCP是被动式触发的,别人发了dhcp的请求包过来后,才会回应。。。。
而且用的是ARP和RARP协议,没有任何端口的。。所以你用netstat是看不出来的。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 16:09 , Processed in 0.057208 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表