C#程序开发出来,运行一段时间后,发现其占用的CPU不断上升,根据经验和牛人指导分享下定位出现问题的位置:
可能是某些算法是基于历史数据的,随着运行的时间变长,历史数据越来越多,每次运算要处理的数据多了,占用的CPU就会上升。
定位问题的办法:
可以考虑在主要的数据处理步骤那里统计一下运算耗时并打印调试信息,间隔可以长一些,比如每半小时打印一次日志“xxx步骤运算耗时xxx”到本地文件,比如txt文件,计算时间可以用Stopwatch()。运行一段时间后,查看日志就可以看出哪里的耗时越来越长,这样就可以定位到位置了。
网友评论