Linux CPP程序的三种实现定时任务的方法
来源:互联网 发布:淘粉吧与淘宝什么关系 编辑:程序博客网 时间:2024/04/28 11:17
我的定时任务中的 iostream等会core down,很苦恼。
今天发现我的定时任务里cout竟然挂掉了,然后socket的write和read会被阻塞了,好奇怪的事情,redis也阻塞着。
然后师傅看了我的程序,认为我的定时任务是使用sigalarm定时,然后在信号中断里做业务,而我的业务太多了,一般他们不在中断中做太多业务,怀疑我的cout、fout或者redisCommand的上下文被破坏掉了,建议我不要这么做。
现在我总结几个做定时任务的方法吧:
一、多线程,另起一个线程,假如30s做定时时间,那么sleep 30s,然后做相应动作
二、main函数里打时间戳,每次进入到要做业务的代码块时判断时间是否大于30s,如果大于,就做相应业务,然后更新时间
三、signal,就是我现在做的方法,只不过在中断程序里设置标志,把要定时执行的任务放在main函数里,每次进入时判断标志决定是否执行。
0 1
- Linux CPP程序的三种实现定时任务的方法
- 定时任务的三种实现方法
- JAVA技巧(Java定时执行任务的实现方法) 定时执行任务的三种方法
- java的三种实现定时任务的方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- xshell为何鼠标双击时会触发换行
- 多线程的那点事儿(之数据互斥)
- GNU Screen Splitting
- libtool的作用及应用
- 优质代码
- Linux CPP程序的三种实现定时任务的方法
- HTTP常见错误代码列表汇总及解决方案
- VB 操作Excel
- C#泛型
- cocos2d-x内存管理机制解析(一)
- IT通信互联网行业2014校园招聘大礼包
- fileuploadJs+JcropJs+php综合小应用 实现图片拖拽上传与裁剪功能的demo
- Windows安全属性的设定
- 图解WPF程序打包全过程