https://groups.google.com/forum/#!topic/golang-nuts/I7a_3B8_9Gw https://groups.google.com/forum/#!msg/golang-nuts/coc6bAl2kPM/ypNLG3I4mk0J ask:   ----------------------- Hello, I'm curious as to what the proper way of listening multiple simultaneous…
inux中,关于多路复用的使用,有三种不同的API,select.poll和epoll https://www.cnblogs.com/yearsj/p/9647135.html 在上一篇博文中提到了五种IO模型,关于这五种IO模型可以参考博文IO模型浅析-阻塞.非阻塞.IO复用.信号驱动.异步IO.同步IO,本篇主要介绍IO多路复用的使用和编程. IO多路复用的概念 多路复用是一种机制,可以用来监听多种描述符,如果其中任意一个描述符处于就绪的状态,就会返回消息给对应的进程通知其采取下一步的操作…
本文摘自 http://www.z6688.com/info/57987-1.htm 最近我负责一个IM项目的开发,服务端和客户端采用TCP协议连接.服务端采用C#开发,客户端采用Delphi开发.在服务端开发中我碰到了各种各样的网络异常断开现象.在处理这些异常的时候有了一些心得,现在写出来和大家分享一下. 那网络异常断开原因主要有那些呢?归纳起来主要有以下两种: 1.客户端程序异常. 对于这种情况,我们很好处理,因为客户端程序异常退出会在服务端引发ConnectionReset的Socket异…
执行以下命令: #netstat -n | awk ‘/^tcp/ {++state[$NF]} END {for(key in state) print key."\t".state[key]}’ 会得到类似下面的结果,具体数字会有所不同: FIN_WAIT_1 FIN_WAIT_2 SYN_SENT LAST_ACK CLOSING CLOSED SYN_RCVD TIME_WAIT ESTABLISHED #差不多等于连接的并发数 这条命令可以把当前系统的网络连接状态分类汇总.…
VMware虚拟机的网络连接方式分为三种:桥接模式.NAT模式.仅主机(Host Only) (1)桥接模式 桥接模式即在虚拟机中虚拟一块网卡,这样主机和虚拟机在一个网段中就被看作是两个独立的IP地址.主机和虚拟机可以相互连接,同时虚拟机也可以访问Internet,一般如果配置服务器采用桥接模式. (2)NAT模式 NAT模式下,虚拟机与主机共用一个IP地址,主机和虚拟机都可以上网,但是在主机网段内,其他真实主机是无法访问该虚拟机的,NAT也是VM安装新虚拟机时默认的网络连接模式,一般简单的上网…
socket 客户端 import socket 1.client = socket.socket()  # socket.TCP/IP 选择连接的类型,默认为本地连接 2.client.connect(('localhost', 6000))  # connect(a.ip, a.port) a.ip = 'localhost, a.port = 6000  服务器连接 3.socket.send('吃饭'.encode('utf-8'))  # 发送数据 发送的数据需要转换为字节格式 4.d…
方法一: #include "stdafx.h" #include "windows.h" #include <Sensapi.h> #include <iostream> #include <Wininet.h> #pragma comment(lib, "Sensapi.lib") #pragma comment(lib, "Wininet.lib") using namespace s…
var price float32 = 39.29 float64和float32类似,只是用于表示各部分的位数不同而已,其中:sign=1位,exponent=11位,fraction=52位,也就意味着可表示的范围更大了. 二.decimal类型 由于golang中默认没有decimal类型,如果想使用decimal类型需要通过第三方包 go get github.com/shopspring/decimal decimal使用方式 package main import ( "fmt&qu…
1, 如果服务端的Socket比客户端的Socket先关闭,会导致客户端出现TIME_WAIT状态,占用系统资源. 所以,必须等客户端先关闭Socket后,服务器端再关闭Socket才能避免TIME_WAIT状态的出现. 2, 在linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号. client端通过 pipe 发送信息到server端后,就关闭client端, 这时server端,返回信息给 client…
本文转载自:http://www.cnblogs.com/jacklikedogs/p/3976208.html 1, 如果服务端的Socket比客户端的Socket先关闭,会导致客户端出现TIME_WAIT状态,占用系统资源. 所以,必须等客户端先关闭Socket后,服务器端再关闭Socket才能避免TIME_WAIT状态的出现. 2, 在linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号. client…