关于服务器端编程的程序调试心得

原创 2015年11月19日 21:19:19
对某些需要在编译以后放到服务器端或者集群运行的程序,在没有调试工具的情况下,解决问题的方法主要是通过输出语句(将info输出到日志中),分为以下步奏:
1、对问题的定位
将程序分为几大逻辑,根据顺序逐个大逻辑进行测试(不要放过任何一部分,不要认为某个部分一定不会出错,往往出错的就是这部分)。然后逐步缩小问题出现的范围,对代码进行修改。
2、发现问题
a、出现问题后编译器一般都会有提示,如果丝毫没有提示,那么也许是从某个逻辑出口跳出了。诸如try,catch语句,break,return语句等等。
b、段错误(segment error),一般原因为数组越界,这就要求我们在编程的时候考虑周到,对map的getvalue以及String的subString时候先检查是否hasKey,以及index == -1 的问题。
3、对问题的解决
对问题的解决与问题的定位相反,可采取由小到大的方式,先将出现问题的地方改过,然后逐步向后扩大,看看是否会影响到后续代码的运行。
4、 不太清楚的函数不要瞎用,以及以前没用过的东西更要提高警惕。要注意try,catch语句的使用问题,try中的语句throw异常以后,进入对应的catch语句进行执行,直接跳过try中throw异常后面的语句,如果最后有finally,那么会执行finally的内容然后顺序执行。


谢谢kailian、zhangli、wangyue、bowen各位师傅的指导。多做总结,共同进步!
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

tcpip服务器端编程的程序

  • 2009-11-17 13:05
  • 403KB
  • 下载

网络编程入门服务器端程序

基于TCP和控制台的服务器端代码实现。基于TCP和控制台的服务器端代码实现。 #include #include void main() { WORD wVersionRequested; ...

C#网络编程服务器端程序实现源码浅析

C#网络编程服务器端程序实现源码是怎么样的呢?让我们来看看其中重要的一部分:     由于在此次程序中我们采用的结构是异步阻塞方式,所以在实际的程序中,为了不影响服务器端程序的运行速度,我们在程序中...

linux网络编程之posix 线程(一):线程模型、pthread 系列函数 和 简单多线程服务器端程序

一、posix 线程概述 我们知道,进程在各自独立的地址空间中运行,进程之间共享数据需要用进程间通信机制,有些情况需要在一个进程中同时执行多个控制流程,这时候线程就派上了用场,比如实现一个图形界面的下...

linux基础编程 套接字socket 完整的服务器端多线程socket程序

此段程序来自我的一个项目中,稍微做了些修改,运行稳定,客户端程序比较简单所以未编写,可以用socket调试工具测试此段代码 费话不多说,直接上代码 #include #include #i...

Unix网络编程之select实现服务器端程序

1.先看一下select 函数原型: #include #include int select (int maxfdp1,fd_set *readset, fd_set *writeset,fd_se...

linux网络编程之socket(九):使用select函数改进客户端/服务器端程序

一、当我们使用单进程单连接且使用readline修改后的客户端程序,去连接使用readline修改后的服务器端程序,会出现一个有趣的现象,先来看输出: 先运行服务器端,再运行客户端, simba@...

linux网络编程之socket(九):使用select函数改进客户端/服务器端程序

一、当我们使用单进程单连接且使用readline修改后的客户端程序,去连接使用readline修改后的服务器端程序,会出现一个有趣的现象,先来看输出: 先运行服务器端,再运行客户端, si...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)