TC官方合作论坛
标题:
我作的TC程序 ,运行一段时间就崩溃,提示出现错误
[打印本页]
作者:
xlqglm
时间:
2016-4-11 16:32
标题:
我作的TC程序 ,运行一段时间就崩溃,提示出现错误
我作的TC程序 ,运行一段时间就崩溃,提示出现错误。我观察了一下,全是出现在找图找坐标那个环节。我用的是TC自带的找图命令。这个有问题吗?
作者:
sht9002
时间:
2016-4-11 18:00
我的也是这种情况,在这里发贴,然并卵
作者:
adamyun
时间:
2016-4-11 21:07
还是用大漠比较稳定
作者:
剑仙十号
时间:
2016-4-12 15:42
你可以记录日志。
找出错误的地方。
//
这个情况,在以前我也遇到过,
后来用日志记录,发现除数中的变量,在某个时候变为0。
之后,内存不能“read”
作者:
qq1010892445
时间:
2016-5-24 09:52
多线程情况下全局变量同时修改的原因
作者:
剑仙十号
时间:
2016-5-26 12:35
【剑仙教程】调试的方法1:文件写日志( )。
.
TC简单开发:文件写日志() 的意义。
TC简单开发:文件写日志() 的研究心得。
.
有时候,变量值发生变化使脚本发生错误。
这种变化不是每时每刻都发生的,有时几天一次,有时几十天才发生一次。
脚本作者,不可能时时都守在电脑前,观察脚本运行的情况。
这样,文件写日志() 就可以发挥它的作用了。
.
日志记录,当脚本意外_退出时(不预先停止脚本,直接用手动关闭也算)
文件写日志() 可以记录下
脚本执行到的准确位置,
这个位置中,脚本变量里面数值。
.
通过分析日志文件,作者可以得出脚本意外退出的问题原因,再根据问题加以改进。
//
//
日志记录的写法。
1,脚本的入口与出口:
这个粒度可以是重要方法级或模块级。记录它的输入与输出,方便定位。
.
2,线程的入口与出口:
记录线程的输入与输出,方便定位。
.
3.变量的变化
程序中重要的状态信息的变化应该记录下来,方便查问题时还原现场,推断程序运行过程
.
4.多个线程,建议用多个txt 文件做日志记录。
.
下次开始脚本时,先读取日志记录,的和它的全部内容。
正则表达式匹配,如果没有匹配到线程出口的“关键词”,则把日志文件复制到“脚本意外事件”文件夹。
总结:
日志记录,是程序员在编程中 必须面对的事情。
日志记录是高级功能,对日志内容的分析,需要编程的基础。
//
//
第五,对日志记录进行分析。
对代码的单步调试只在代码行数较少的时候比较适用,如学校教材上面的程序。
但在实际的软件项目中,代码少则几千行,多则数万行,用单步调试的方法显然不恰当。
为了跟踪某一变量值的变化,用该方法可能要花费几个小时,这对工作效率产生了严重影响。为了解决大程序文件代码调试问题,日志系统应运而生。
在程序中,在关键的地方记录日志,之后对记录的日志,进行分析。这样可找到对应代码的问题。
因此,日志文件分析成了大型软件项目中代码调试的主要手段。
作者:
剑仙十号
时间:
2016-5-26 12:35
用文件写日志()
来跟踪,
重要发现:多个线程,在同一时间修改同一个全局变量。就会造成脚本莫名其妙的死掉。停止。退出。
.
找到原因之后,使用线程_临界区,完美解决这个问题。
//
不同的脚本,造成脚本错误的原因可能是不一样的。
//
楼主可以用 用文件写日志()
跟踪你的脚本,发现问题的所在,再对症下药解决这些问题。
作者:
xlqglm
时间:
2016-6-6 10:44
谢谢各位帮助,问题已经解决了。主要是我在函数调用上犯了错。一个函数调用下一个,一连串的调用,容易出错。后来改成在主函数中判断调用下面的函数。问题解决了。再没出现过这个问题。
作者:
xlqglm
时间:
2016-6-6 10:47
主要是采用了这种方案解决的。
未命名.JPG
(25.12 KB, 下载次数: 7)
下载附件
2016-6-6 10:46 上传
再次感谢言术的帮助。
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1