[问题] 两个以上的QTimer问题

楼主: checkIO (chec)   2016-10-28 13:56:22
开发平台(Platform): (Ex: Win10, Linux, ...)
vs2015
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
qt 5.7
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
我有一个timer1 是要每10秒对 myFile.csv写入资料
timer2 要每分钟把 myFile.csv -> myFile.zip
请问我要怎样再确认timer1已经对csv写入完成后(总是有可能重叠到!?)
再使用timer2将他打包成zip呢?
作者: uranusjr (←這人是超級笨蛋)   2016-10-28 13:59:00
常见的 async programming 问题, 从架构上就错了
作者: Ebergies (火神)   2016-10-28 14:07:00
这好像是我会做的事... 怎么样的架构更好呢?如果只是原问题的话,QTimer 一般使用的话会是同个thread所以不存在确认问题, 若是不同 thread, 看是要用 mutex或 flock 都可处理吧
楼主: checkIO (chec)   2016-10-28 14:15:00
那请问要怎样做会比较好呢 我没用过thread...
作者: hichcock (快乐一整年 ^^~~~)   2016-10-28 14:17:00
timer1 10秒一次, timer2 60秒一次那干麻用到两个 timer, 一个就好了阿timer1 执行 6 次后做 timer2 的事情连同步都省了
作者: Ebergies (火神)   2016-10-28 18:14:00
楼上突破盲点 XDD
作者: CodingMan (程式侠)   2016-10-28 22:52:00
应该是每五次?
作者: pttworld (批踢踢世界)   2016-10-28 23:14:00
问自己打包是否一定发生在写完后得解。
作者: Schottky (顺风相送)   2016-10-29 02:21:00
写入 .csv 也许是预防当机要经常存盘还说得通每分钟压缩一次 .zip 是为什么... 你有没有想过这个问题

Links booklink

Contact Us: admin [ a t ] ucptt.com