转自:http://blog.csdn.net/e3002/archive/2009/01/17/3806984.aspx
socket编程的注意事项:
1.连接超时
不推荐的写法
m_socket = new Socket(fm_ipaddr,fm_port);
m_socket.setSoTimeout(180000);//读取数据超时设置3m
以上这种写法,在对方端口当掉时,客户端会一直等待连接,并不会抛出异常。所以超时根本没用
推荐写法:
m_socket = new Socket();
m_socket.setSoTimeout(180000);//读取数据超时设置3m
m_socket.connect(new InetSocketAddress(fm_ipaddr,fm_port), 2000);//建立连接超时设置
2.在进行流操作时最好加上以下判断
m_socket.sendUrgentData(0xFF);//判断一下网络是否断开
3.是否关闭输出流和输入流
对于同一个socket,如果关闭了输出流,则与该输出流关联的socket也会被关闭。所以一般不用关闭流,直接关闭socket就可以了。
以上经过实践证明可行。
本文来自CSDN博客,转载请标明出处:file:///C:/Documents%20and%20Settings/Administrator/桌面/socket/socket编程的注意事项%20-%20君之剑的专栏%20-%20CSDN博客.mht
分享到:
相关推荐
四、Socket编程注意事项 1. 异常处理:网络通信中可能会出现各种异常,如连接失败、数据传输错误等,因此需要编写良好的异常处理代码。 2. 流的关闭:确保在所有通信完成后关闭输入流、输出流和Socket,防止资源泄漏...
#### 六、Socket编程注意事项 - **错误处理**: 在编写Socket程序时,需要充分考虑错误处理机制,确保程序的健壮性。 - **性能优化**: 根据应用场景选择合适的Socket类型,同时优化代码以提高数据传输效率。 - **...
4. UDP Socket编程注意事项 - UDP没有连接的概念,因此无需调用`listen()`和`accept()`函数。 - 由于UDP的无连接性,客户端和服务器之间的通信可能不稳定,可能会丢失数据包,需要在应用层实现重传和确认机制。 -...
#### 六、Socket编程注意事项 - 在编写Socket程序时,需要注意错误处理机制,合理设置和检查`errno`以确保程序的健壮性。 - 对于客户端和服务器端的编程模式有所区别,服务器端需要监听和接受连接,而客户端则是...
#### 四、Socket编程注意事项 - **端口选择**:建议使用大于1024的端口,避免与系统保留端口冲突。 - **异常处理**:网络编程中经常遇到各种异常,如连接失败、读写错误等,应做好异常处理。 - **安全性考虑**:...
#### 四、Socket编程注意事项 - **安全性**:网络通信涉及数据安全,需注意加密传输,如使用SSL/TLS协议。 - **错误处理**:网络环境不稳定,应妥善处理各种网络异常,如断线重连、超时重试等。 - **资源管理**:...
5. **C# Socket编程注意事项** - 错误处理:在进行Socket通信时,需要对可能出现的异常进行捕获和处理,如连接失败、数据传输错误等。 - 网络延迟:由于网络环境的不确定性,可能会出现数据包丢失或乱序,编程时要...
#### 七、Socket 编程注意事项 - 在实际开发中,应该考虑异常处理机制,确保程序的健壮性。 - 对于并发连接,可以考虑使用多线程或异步 Socket 编程模型。 - 注意 Socket 连接的管理,避免资源泄露。 - 考虑安全性...
如_何_应_用TCP_IP_的_套_接_字_开_发_网_络_通_信_应_用_程_序,基于C_Socket的网络通信程序设计,socket_编程的几个注意事项,Socket接口原理及用C_语言实现,网络通信精选,c_socket编程基础,TCP三次握手分析,...
- **WSAStartup().doc**: 详细介绍了`WSAStartup()`函数的用法和注意事项,这是进行Socket编程的第一步。 - **Socket编程实例.doc**: 这个文档应该包含了完整的Socket通信代码示例,从初始化到数据传输的全过程,...
**跨平台Socket编程注意事项:** 1. **兼容性问题**:尽管接口类似,但Windows和Linux的实现细节可能存在差异,例如错误处理方式、缓冲区大小等,需要进行适配。 2. **端口复用**:`SO_REUSEADDR`选项允许快速重启...
#### 五、Socket编程注意事项 1. **异常处理**:在网络编程中,由于网络环境的不确定性,可能会出现各种异常情况,如连接中断、数据丢失等。因此,在编写Socket程序时,需要充分考虑异常处理机制。 2. **资源管理**...
#### 四、Socket编程注意事项 - **错误处理**:在网络编程中,必须仔细处理可能出现的各种错误情况,包括连接失败、数据丢失等问题。 - **安全性**:确保Socket通信的安全性至关重要,尤其是在传输敏感数据时。...
8. **注意事项**: - 网络操作应在主线程之外执行,以避免阻塞UI。 - 考虑到网络状态的不确定性,应做好重试和断线恢复机制。 9. **学习资源**: - Android开发者官方文档提供了关于Socket编程的详细指南。 - ...
四、Android中的Socket编程注意事项 - 在Android中,由于安全性和权限问题,Socket通信通常应在单独的线程(如AsyncTask或自定义Thread)中执行,避免阻塞主线程。 - 需要在AndroidManifest.xml中添加INTERNET权限:...
这个实验课件和源码集合对于计算机网络初学者来说是一份宝贵的资料,它将理论知识与实践操作相结合,帮助学习者从实践中掌握SOCKET编程的基本技巧和注意事项,为进一步深入研究网络编程打下坚实基础。
#### 六、Socket 编程注意事项 - **异常处理**:网络编程中可能会遇到各种异常,如连接失败、数据传输错误等,因此需要妥善处理异常情况。 - **资源管理**:确保所有的网络资源都能够得到正确的释放,避免资源泄露...
#### 四、注意事项 - **错误处理**:在网络编程中可能会出现各种错误,如连接失败、数据发送/接收失败等。因此,在编写Socket程序时,需要充分考虑到这些异常情况,并进行适当的错误处理。 - **并发处理**:服务器...