Server 编程会用到的工具

来源:互联网 发布:qq头像psd源码 编辑:程序博客网 时间:2024/06/06 02:34

刚工作一年,而且这一年里都只跟ASP.NET打交道,突然间叫我去搞Linux的服务器编程,充满挑战,遇到很多困难,使用了几个好用的工具,具体用法就不说了,网上一个大堆,做个介绍而已。

1.内存泄漏,刚搞C++的都会遇到这问题,前人们归纳出来的解决方案是new和delete,malloc和free(包含对于的[])都得成对出现在一个地方,即在那个函数生,就在那个函数死。这方案是对的,但现实中未必能用,当某些实例的生存周期不确定的时候,就不能在一个函数里搞生死配对了吧?

后来使用了Valgrind,它可以统计内存泄漏,根据它生成的记录,对程序修修补补吧。

除了能统计内存泄漏,还能定位出错的地方,这个功能强大,可以省去很多debug的时间。

 

2.性能优化。 这软件工程就得这样,要把目标搭建得快,搭起来好看,好用,还得高效。好看,好用可以通过很直观的表现定位改进的地方,但性能则很不直观。程序跑的时候,哪里用的时间多,哪里用得少,都不清楚,得统计。

自己在程序里写满log是个不错的建议,有恒心的同学可以放手一试,但我很懒,用gprof。

只要加入-g去编译,系统正常跑完(关键点),就会出个gmon.out的记录,可以用gprof打开,出来的都是密密麻麻的问题,要想好看点,可以用kprof,这个kprof在suse上装貌似有问题,因为我又懒又想快,所以在debian上看

 

未完待续。。。