fopen传入的文件名是正确的,但是创建的文件怎么名字有错误???
看了半天代码也没问题啊。
文件名不是静态的,是通过argv传进来的,gdb调试,看文件名也OK,但是就是创建的文件名不正确,不知道什么原因,后面改了下参数(只是简单的改了下字符串),又好了,哪位大神如果知道确切原因,还望分享下。
今天客户端同学问了个问题,C++语言里面的timer怎么实现,当时懵逼了(不喜欢这个词),之前也有想过,但是没有实现过,比如写个简单的库或者什么的。搜了下答案,这里记录下,当然有更好的实现了记得分享下哦
(1)sleep
优点:实现简单,程序的编写逻辑也很清楚
缺点:程序进入睡眠状态,对性能和调度比较敏感的程序使用起来可能会不爽
(2)gettimeofday/clock/time
优点:这是几个获取时间的函数,思想就是第一次调用获得一个开始时间,再隔一会再获得一个时间,两个时间相减,如果满足条件则执行定时器逻辑。
缺点:具体怎么获得第二个时间点,如果粒度太细,CPU在执行大量的检查;如果粒度太粗,可能不能很好的实现对时间的控制。
(3)settimer
优点:操作系统支持,调用简单
缺点:只能通过信号的方式来通知主程序,信号处理函数这里需要谨慎,不要执行太重的逻辑。
其实libevent里面也有定时器,有时间了看看源码,看看人家是怎么实现的。
今天又没有干什么实事,帮助联调,更新资源,没有开发什么新的逻辑。还是得靠自己啊。