TC官方合作论坛

 找回密码
 立即注册
查看: 1932|回复: 9

[源码分享] 多线程调试的绝招(写日志)

[复制链接]
发表于 2013-8-6 10:14:17 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
      最近看到很多TC同学在交流群的问到,用到多线程的时候在调试的时候就模糊了,那么多断点,在每个线程之间跳出跳出,思维很混乱,怎么才能调试好呢,其实这个问题可以利用写日志来解决,这里我给大家共享一个我平常用的一个日志函数 功能很简单,大家可以自己在这个基础上做改良,改造成一个属性自己的日志函数



  1. function add_log(str , path = "d:\\QFlog.txt")
  2.     handle
  3.     handle = file.openfile(path , "rw|OPEN_ALWAYS|FILE_SHARE_READ|FILE_SHARE_WRITE")
  4.     if(handle == 0)
  5.     return false
  6.     endif
  7.     file.writefileend(handle , "//" & system.getsystime(3) & " "& str & "\r\n")
  8.     file.closefile(handle)
  9.     endfunction
复制代码





函数代码不多,我就不做过多的功能解释了
//另外多线程调试的时候 可以将每个线程的日志 单独输出到同一个文件里面去,这个就方便管理了
至于具体怎么操作就让大家自己由发挥吧
希望TC越来越棒
回复

使用道具 举报

发表于 2013-8-6 10:24:52 | 显示全部楼层
  1. function add_log(str , path = "d:\\QFlog.txt")
  2.     handle
  3.     handle = file.openfile(path , "rw|OPEN_ALWAYS|FILE_SHARE_READ|FILE_SHARE_WRITE")
  4.     if(handle == 0)
  5.     return false
  6.     endif
  7.     file.writefileend(handle , "//" & system.getsystime(3) & " "& str & "\r\n")
  8.     file.closefile(handle)
  9.     endfunction
复制代码

回复 支持 反对

使用道具 举报

发表于 2013-8-6 10:59:56 | 显示全部楼层
支持一下
回复 支持 反对

使用道具 举报

发表于 2013-8-6 11:36:03 | 显示全部楼层
恩,不错,最好加一个不存在文件,就创建一个日志文件。
借花献佛一下
  1. function add_log(str , path)
  2.     handle
  3.     if(!file.exist(path))
  4.         handle = file.createfile(path, "rw")
  5.         file.writefileend(handle , "(" & system.getsystime(3) & ") "& "创建日志文件成功" & "\r\n")
  6.     else
  7.         handle = file.openfile(path , "rw|OPEN_ALWAYS|FILE_SHARE_READ|FILE_SHARE_WRITE")
  8.     endif
  9.     if(handle == 0)
  10.         return false
  11.     endif
  12.     file.writefileend(handle , "(" & system.getsystime(3) & ") "& str & "\r\n")
  13.     file.closefile(handle)
  14. endfunction
复制代码
回复 支持 反对

使用道具 举报

发表于 2013-8-6 13:11:50 | 显示全部楼层
OPEN_ALWAYS 属性就是文件不存在的话 就创建
回复 支持 反对

使用道具 举报

发表于 2013-8-6 13:40:06 | 显示全部楼层
我那个顶啊
回复 支持 反对

使用道具 举报

发表于 2013-8-9 19:37:32 | 显示全部楼层
这个日志函数具体怎么用啊,能给个实例吗?在什么地方启用这个函数啊,还有就是,这个调试能知道出错在哪行吗?看代码好像只是在文本写入系统时间啊。小白不懂,还请大神们赐教,表笑在下啊。
回复 支持 反对

使用道具 举报

发表于 2013-10-24 23:09:51 | 显示全部楼层
TC兔子 发表于 2013-8-6 11:36
恩,不错,最好加一个不存在文件,就创建一个日志文件。
借花献佛一下

看起来不错。可惜看不懂。弄成中文的呀。。求中英互转
回复 支持 反对

使用道具 举报

发表于 2014-11-11 16:24:51 | 显示全部楼层
求实例...
回复

使用道具 举报

发表于 2015-1-23 18:36:24 | 显示全部楼层
明明中文编程非要弄成英文,看不懂{:soso_e141:}
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-12 08:06 , Processed in 0.044057 second(s), 22 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

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