linux下C语言有没有定时调用的函数??
Linux系统下C语言编程,遇到的问题:
假如现在系统有很多的可执行程序(任务),比如有需要每天跑的,有月初跑的,有月末跑的,我建立一个数据库表,把这些任务名称、要执行的日期、时间等写入到表中。
另外写一个主控程序去查询数据库表,fork子进程,然后根据任务执行的时间去定时的调起程序(比如用system函数或exec函数族)。
现在数据库的操作接口都已经写好了,但先在有一个问题是,在任务的执行时间还没到的时候,我的主控程序怎么办?是一直等待(比如sleep)一直查询时间是否到了,总感觉这样太笨了,还是有别的更好方法??
C语言中有没有可以定时的调用某一任务的函数??难道要自己写定时器吗??[/size]
求助。。。
------解决方案--------------------
只有起一个线程监听了,且只负责监听定点时间任务,
到了某一个时间需要执行某一个任务就开启线程执行了!
------解决方案--------------------不要因为10秒后工作就sleep(10),可以永远sleep(1),然后每次醒来后检查与10秒到没到,这样程序设计才灵活。