小记:昨天咱们已经了解了Socket的通信原理,可是点对点的一次通信并不是我们想要的,那么今天那我们就继续学习异步通信,简单来说就是服务器端和客户端可以进行多次 互发信息的通信而不用担心通道会关闭。在介绍异步通信时,客户端和服务器端的连接和上面介绍的同步通信建立连接的方式是一样的,只是接收和发送数据的方式改变了!

1.什么是异步通信?

异步:客户端请求之后,不必等到服务器回应之后就可以发送下一条请求,并行运行。

2.同步与异步的区别?

同步:我叫你吃饭,你若暂时有事情我就一直在那等,不干别的事情,直到你忙完。
异步:我叫你吃饭,你若暂时有事情,我就先撤,干点别的,你忙完了再通过某种方式,如电话,通知我。

异步通信的好处我理解的就是可以多次使用一个Socket增加网络的吞吐量,提高资源的利用率。

aaarticlea/png;base64,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" alt="" />

下面开始代码分析,和上篇的没多大差别,就是发送和接收数据的方式变了:

服务器端:TcpServer.cs

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.Sockets;
using System.Threading; namespace TcpServer
{
class Program
{
public static Socket serverSocket;
public static Thread thread; static void Main(string[] args)
{
//确定端口号
int port = ; //设定连接IP
string host = "127.0.0.1"; //将IP地址字符串转化为IP地址实例
IPAddress ip = IPAddress.Parse(host); //将网络端点表示为 IP 地址和端口号
IPEndPoint ipe = new IPEndPoint(ip, port); //建立Socket
//addressFamily 参数一指定 Socket 类使用的寻址方案
//socketType 参数二指定 Socket 类的类型
//protocolType 参数三指定 Socket 使用的协议。
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //socket与本地终结点建立关联
socket.Bind(ipe);
string strSend = "HelloClient";
//开始监听端口
socket.Listen();
Console.WriteLine("服务端已开启,等待客户端连接.....\t" + DateTime.Now.ToString() + DateTime.Now.Millisecond.ToString()); //为新建的连接建立新的Socket目的为客户端将要建立连接
serverSocket = socket.Accept();
Console.WriteLine("连接已建立......\t\t" + DateTime.Now.ToString() + DateTime.Now.Millisecond.ToString());
Console.WriteLine("客户端->服务端:\t" + serverSocket.RemoteEndPoint + "->" + serverSocket.LocalEndPoint); //while (true)
{
string recStr =string.Empty;
//定义缓冲区用于接收客户端的数据
byte[] recbyte = new byte[]; //开始接收数据
ReceiveData(); //服务端给客户端回送消息
strSend = "HelloClient"; //服务端发送数据
//strSend = Console.ReadLine();
Send(strSend); //开启线程监视客户端是否断开
thread = new Thread(ClientConnectOrNot);
Thread.Sleep();
thread.Start(); //serverSocket.Close();
Console.ReadLine();
}
} /// <summary>
/// 监视客户端是否断开
/// </summary>
public static void ClientConnectOrNot()
{
//Console.WriteLine(serverSocket.Poll(-1, SelectMode.SelectRead));
if (serverSocket.Poll(-, SelectMode.SelectRead) == true)//客户端断开
{
Console.WriteLine(serverSocket.RemoteEndPoint + "断开了连接");
thread.Abort(); }
else
{
Console.WriteLine(thread.ThreadState);
}
}
#region
/// <summary>
/// 异步连接
/// </summary>
/// <param name="ip"></param>
/// <param name="port"></param>
/// <param name="clientSocket"></param>
public static void Connect(IPAddress ip, int port)
{
serverSocket.BeginConnect(ip, port, new AsyncCallback(ConnectCallback), serverSocket);
} private static void ConnectCallback(IAsyncResult ar)
{
try
{
Socket handler = (Socket)ar.AsyncState;
handler.EndConnect(ar);
}
catch (SocketException ex)
{
throw ex;
}
}
/// <summary>
/// 发送数据
/// </summary>
/// <param name="data"></param>
public static void Send(string data)
{
//Send(System.Text.Encoding.UTF8.GetBytes(data));
//解决中文乱码
Send(UTF8Encoding.UTF8.GetBytes(data)); //byte[] byteData = UTF8Encoding.UTF8.GetBytes(data);
//Send(Encoding.ASCII.GetBytes(data));
}
/// <summary>
/// 发送数据
/// </summary>
/// <param name="byteData"></param>
private static void Send(byte[] byteData)
{
try
{
int length = byteData.Length;
//byte[] head = BitConverter.GetBytes(length); //这个为什么不对,我也不清楚
byte[] head = Encoding.ASCII.GetBytes(length.ToString()); //将发送数据的字节长度写到报头中
//head.Length = 4; //开始我想指定头部4个字节长度用来存放字节的总数便于拆包
byte[] data = new byte[head.Length + byteData.Length]; //发送包的总大小
for (int i = ; i < ; i++)
{
data[i] = ;
}
Array.Copy(head, data, head.Length); //将head复制到data中
Array.Copy(byteData, , data, head.Length, byteData.Length); //将byteData复制到data中 serverSocket.BeginSend(data, , data.Length, , new AsyncCallback(SendCallback), serverSocket);
}
catch (SocketException ex)
{
throw ex;
}
} private static void SendCallback(IAsyncResult ar)
{
try
{
Socket handler = (Socket)ar.AsyncState;
handler.EndSend(ar);
}
catch (SocketException ex)
{
throw ex;
}
} /// <summary>
/// 接收数据8个字节
/// </summary>
static byte[] MsgBuffer = new byte[]; /// <summary>
/// 接收消息
/// </summary>
public static void ReceiveData()
{
serverSocket.BeginReceive(MsgBuffer, , MsgBuffer.Length, , new AsyncCallback(ReceiveCallback), null);
} /// <summary>
/// 回调接收数据
/// </summary>
/// <param name="ar"></param>
private static void ReceiveCallback(IAsyncResult ar)
{
try
{
int REnd = serverSocket.EndReceive(ar);
if (REnd > )
{
byte[] data = new byte[REnd];
Array.Copy(MsgBuffer, , data, , REnd);
int Msglen = data.Length;
//在此次可以对data进行按需处理
serverSocket.BeginReceive(MsgBuffer, , MsgBuffer.Length, , new AsyncCallback(ReceiveCallback), null);
Console.WriteLine("来自到客户端{0}字节:{1} \tTime:{2}",REnd ,UTF8Encoding .UTF8.GetString(data, , Msglen),DateTime.Now.ToString()+ DateTime.Now.Millisecond.ToString());
}
else
{
dispose();
}
}
catch (SocketException ex)
{
throw ex;
}
} /// <summary>
/// 释放连接
/// </summary>
private static void dispose()
{
try
{
serverSocket.Shutdown(SocketShutdown.Both);
serverSocket.Close();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
} 客户端 TcpClient.cs
 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.Sockets;
using System.Threading; namespace TcpClient
{
class Program
{
static int port = ; //监听端口号
static string host = "127.0.0.1"; //连接服务端IP
static IPAddress ip = IPAddress.Parse(host); //将IP地址转换为IP实例
static IPEndPoint ipe = new IPEndPoint(ip, port);//将网络端点表示为 IP 地址和端口号
static Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//建立客户端Socket static Thread thread_client;
static void Main(string[] args)
{
Connect(ip, port);//异步连接
string sendStr = "Nice to meet you,Server!";
thread_client = new Thread(ClientConnectOrNot);
Thread.Sleep();
thread_client.Start();
{
Console.WriteLine("服务器->客户端:" + clientSocket.RemoteEndPoint + "->" + clientSocket.LocalEndPoint);
Send(sendStr); //发送消息
ReceiveData(); //接收消息
sendStr = Console.ReadLine();
} }
/// <summary>
/// 判断服务端是否关闭
/// </summary>
public static void ClientConnectOrNot()
{
if (clientSocket.Poll(-, SelectMode.SelectRead) == true) //检测服务端是否关闭
{
Console.WriteLine(clientSocket.RemoteEndPoint+"服务端已关闭..."); //thread_client.Abort();
//Thread exit = new Thread(ApplicationExit); //自动关闭程序
//Thread.Sleep(3000);
//exit.Start(); }
else
{
Console.WriteLine(thread_client.ThreadState);
}
}
/// <summary>
/// 退出程序关闭Dos窗口
/// </summary>
public static void ApplicationExit()
{
Environment.Exit();
} #region
/// <summary>
/// 异步连接
/// </summary>
/// <param name="ip"></param>
/// <param name="port"></param>
/// <param name="clientSocket"></param>
public static void Connect(IPAddress ip, int port)
{
clientSocket.BeginConnect(ip, port, new AsyncCallback(ConnectCallback), clientSocket);
} private static void ConnectCallback(IAsyncResult ar)
{
try
{
Socket handler = (Socket)ar.AsyncState;
handler.EndConnect(ar);
}
catch (SocketException ex)
{
throw ex;
}
}
/// <summary>
/// 发送数据
/// </summary>
/// <param name="data"></param>
public static void Send(string data)
{
//Send(System.Text.Encoding.UTF8.GetBytes(data));
//Send(Encoding.ASCII.GetBytes(data));
Send(UTF8Encoding.UTF8.GetBytes(data));
}
/// <summary>
/// 发送数据
/// </summary>
/// <param name="byteData"></param>
private static void Send(byte[] byteData)
{
try
{
int length = byteData.Length;
//byte[] head = BitConverter.GetBytes(length);
byte[] head = Encoding.ASCII.GetBytes(length.ToString()); //头部表示字节的总长度
byte[] data = new byte[head.Length + byteData.Length];
Array.Copy(head, data, head.Length);
Array.Copy(byteData, , data, head.Length, byteData.Length);
clientSocket.BeginSend(data, , data.Length, , new AsyncCallback(SendCallback), clientSocket);
}
catch (SocketException ex)
{ }
}
/// <summary>
/// 回调发送
/// </summary>
/// <param name="ar"></param>
private static void SendCallback(IAsyncResult ar)
{
try
{
Socket handler = (Socket)ar.AsyncState;
handler.EndSend(ar);
}
catch (SocketException ex)
{
throw ex;
}
} /// <summary>
/// 定义缓冲区接收数据8个字节
/// </summary>
static byte[] MsgBuffer = new byte[]; /// <summary>
/// 接收消息
/// </summary>
public static void ReceiveData()
{
clientSocket.BeginReceive(MsgBuffer, , MsgBuffer.Length, , new AsyncCallback(ReceiveCallback), null);
}
static bool first = true;
private static void ReceiveCallback(IAsyncResult ar)
{
try
{
int REnd = clientSocket.EndReceive(ar);
if (REnd > )
{
byte[] data = new byte[REnd];
Array.Copy(MsgBuffer, , data, , REnd); int Msglen = data.Length;
//在此次可以对data进行按需处理 clientSocket.BeginReceive(MsgBuffer, , MsgBuffer.Length, , new AsyncCallback(ReceiveCallback), null);
string revStr = UTF8Encoding .UTF8.GetString(data, , Msglen);
if (first)
{
string len = revStr.Substring(, );
first = false;
}
Console.WriteLine("来自服务端{0}字节:{1}\tTime:{2}",REnd,revStr,DateTime.Now.ToString()+ DateTime.Now.Millisecond.ToString());
}
else
{
dispose();
}
}
catch (SocketException ex)
{ }
}
/// <summary>
/// 释放Socket
/// </summary>
private static void dispose()
{
try
{
clientSocket.Shutdown(SocketShutdown.Both);
clientSocket.Close();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}
先打开服务端:
aaarticlea/png;base64,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9IhzAACiR5wDABA94hwAgOgR5wAARK/gOJf/p1gAAGAQiHMAAKJHnAMAED3iHACA6PFTOAAAokecAwAQPeIcAIDoEecAAESPOAcAIHrEOQAA0SPOAQCIHnEOAED0iHMAAKJHnAMAED3iHACA6BHnAABEjzgHACB6xDkAANEjzgEAiB5xDgBA9IhzAACi1+l0tgIR5wAAVAtxDgBA9IhzAACiR5wDABA94hwAgOgR5wAARI84BwAgesQ5AADRI84BAIgecQ4AQPSIcwAAokecAwAQPeIcAIDoEecAAESPOAcAIHrEOQAA0SPOAQCIHnEOAED0iHMAAKJHnAMAED3iHACA6BHnAABEjzgHACB6xDkAANEjzgEAiB5xDgBA9IhzAACiR5wDABA94hwAgOgR5wAARI84BwAgesQ5AADRI84BAIgecQ4AQPSIcwAAokecAwAQPeIcAIDoEecAAESPOAcAIHrEOQAA0SPOAQCIHnEOAED0iHMAAKJHnAMAED3iHACA6BHnAABEjzgHACB6xDkAANEjzgEAiB5xDgBA9IhzAACiR5wDABA94hwAgOgR5wAARI84BwAgesQ5AADRI84BAIgecQ4AQPSIcwAAokecAwAQvZxx/n/EtyALg5QD+AAAAABJRU5ErkJggg==" alt="" />
开始->运行,输入cmd确定再输入netstat -a 查看端口监听状态
aaarticlea/png;base64,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" alt="" />


接下来运行客户端:
aaarticlea/png;base64,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" alt="" />
下面咱们稍微改下代码,使客户端和服务端能进行数据交互。
服务器端:
 
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh4AAABFCAIAAACKd3gAAAAJUUlEQVR4nO2dy47jOAxF/Vn9+fqv2cxiMA3FFC9JWX7EOQe1SMgriiIpB4VKo7cNAAAAAAAAAAAAAAAAAAAAAAAAAAAAYC3N4Hkz+msSthabjM0zTLV6rrk6lCoWNkUc+WCeUIU6fxGiU54rc7ma/5z8zzVcHsbXbx86b7sD62Pr1xfg9TtMLMzzbH1JJsTevlU7rIU6fx2iR6XnzJZ4flqlpxH76jQeOm/PP1Lr8PIUiYV52rVn6D2ZdWmlXVW1wxF0v6jzVyB6ZF22v2EoYfRCeZGtPlz4FJLFsq6Lj6S3K82KJ2gdC/U6DRtBK+2+VfuL8U5asg9rOPT2FrELPA3RI6/jpVC9sX0+ML3RCodTzORDKZWyfXJ+doWsqi6rSXauqs9n0ittkb19q/ZfoD9s9fVmanjGPMCNiB4NXWIMtN7O2NA1jOPpv2bAvCMlxZdRam3osrJ85+Y6nS+dHUe9b9X+YtonvTEUN3PPT50HuBHbbs8lViWNdg7FyA2DiAGzcR6EOJJ9e+Mx8n0NXUNl/oxVvZbpIRNjZCcvaX8rum5aX3XZfv1OnV+A6Jdtn27usN2h0ZuijD5c+BSSVRDia1jS8i3R1OHbI/oj+YgzhqOm83wfmbpVa+vtkp8HeCCl1gvx0DKMGW4URk6O7lNoHaFLiC9L0ssn2fJt9GiwodbqdZ7hkTP7Vu1vpT9pf+RMPbUxue+P1Pmr2d/G2Tnx7F78oSyMo98ycgAAAAAAAAAAAAAAcCL//PnDz9zP3a0DAHgqPCLnoG4AAC48IuegbgAALjwi5zhaN+/L3dab0V+A3bH0vXIduXSuuTqUKhY2RRz5YJ5QxSty1b4T5PUwZPiIbCOsS+htNB1fBNcukY/32m4tkvdY8NHSJ5fP3r6+AK/uYWJhnmfrSzIh9vat2mEt1csSXqL2P0k9eHiPSHs1Ntmj7fNa7eLYpky0by6IPYg91+Y/EzzW/Lanj7RNlWktB/sX5mnXnqH3ZNallXZV1Q5H0P1KzuRw7S5+Ug+C5EeLNXp9SeqrY1CKn9w3fzTLRR8tnuviKdfblXrmCVrHQr1Ow0YI52O3b9X+YryTluzDGg69XgKZOFa/mZaFetBkPlpa7oHmTcLQ67mSk6PF+X0zS4bc9tHS35nLKHUl47KaJm/1tD6fSa+0Rfb2rdp/Ae8uZV5vpoalxlnLMILorw6VyQT+Q3+0eC0YFtnryNCr44uUvDxF8tV9M1N0828tF5NvecZlZX/F4aqqvpTM5s+Bt2/V/mLaJ70xFLfRFRXLh9GGFht/uMrmY5f8QhMXUvqtZegVxnB+9Ovd1qKzyeDiXGLJkJv/1nIx1ZuWT3U3GeHCql7LqnNpXVX7W9F10/qqq8krczyHiZzB8uS/tYglC4NkjmY566NFpHLjZJdaO7T0dtGP4dsj+iP5ZMaoan8rmbpVa+vtUu1Xct9STAhZ8g2xjOXgSJTi54NYWXJ+Fny0tI7QJcSn0gza3ntFNLHFWr3OMzxyZt+q/a30J+2PnKmnNmY2zYfSW1jvTzVxIUv+XYtntwu9+Hft27qLMIxfqhsAAGwbj8hZqBsAgAuPyDmoGwCAC4/IOagbAIALj8g5qBsAgAuPyDmoGwCAy+3/V+P3/tzdOgAAgB7vS9bWm9Ffk7C1eN/7LqVaPddcHaoVW3hesaSUEgy5915AifCaWFfy3nn2Fv0TZhFfv33ovO0OrI+tX1+A1+8wsTDPs/UlmdBPn3c3gjc28ZXMzQPciOhR6d5tieenVXoasa9O46Hz9vwjtQ4vT5FYmKdde4bek1mX1ns5DF3DaLc08TV4/fK88EBEj6xL35dhKGFMXluhDxc+hWSxrOviI+ntSrPiCVrHQr1Ow4uw5LzDcex3fO5cTuF1pGTX9fH0Yhd4GsnrE4o97+669UZvtMLhFDP5UEqlbJ+cn10hq6rLapKdq+rzmWT0uvi9y3u9/cBDMFOHsD5bVG0rtqHggVSfGGIMtN7O2NA1jOPpv2bAvCMlxZdRam3osrJ85+Y6XS2d1g+9w2EVo9kb34E97BZNjtVvn5U5aR7gRmy7PZdYlTTaORQjNwwiBszGeRDiSPbtjcfI9zV0DZX5M1b1WuYNhw4bdk3oH9LQ5VTPODc8tl9z8wA3Ivqlb1by3oVGb4oy+nDhU0hWQYivYUnLt0RTh2+P6Kv5ZE6UP69ee2NDl5M5Y7IOoizVeYAHUmr9xL2zMcONwshfdoVbR+gS4suS9PJJtnwbPRpsqLV6nWf+vFuiX2HAMM5X0x8qc95qkcN931fS92Hv19yceHYv/lAWxtFvGTkAAAAAAAAAAAAAAAAAAAAAAIDb//uT7/25u3UAAE+FR+Qck3XzvtxtvRn9BdgdS98r15FL55qrQ0mZbIq27wR5PVQJ+yJGNLTDQfpHZBthXULfRw6broNrl8jHe223FsmHzH+09Mnls7evL8Cre5hYmOfZ+pJsqxc/bMpuqm5s4lsRZbdvq3Y4zu4RaUu9yTu1fbZpF8d2auK6zQXRM2Nl1aE69NuePtI2Vaa1HOxfmKdde4bek1lX5lw6WnV3kTzs0P2ySruqaofj6I8Wa/TuUVJfvbal+Ml980cTnPvR4rkuHn29XalnnqB1LNTrNHQEW/B+63CXqv7b8TpSsus6e3ovGbtL1Q7HER8tLfdA8yZh6PVcYgsdf27fzBLN1R8tt8x9qSsZl9W0zxu+Sp/PJFwiim/tep5uaeJleGfPvN4+W5ycB1H/3ZxU7XCc4UeL17Jh2b0bNPSGI5GJ7+XTDKV9S3N1z28tF5NvecZlZX/F4aqqvpSM0O92DKvRRhzM6uEMD6trNSzOxDx4r22cqh2Ok/mtZegVxnB+9Ovd1qLdyeDiXGKJ5p6/tVxMst8Z11CZP2NVr2V2Lj1xZtNV9m/Eq8/E2UNX5oJ4c1K1w3Ee+LcWsWRhkMzRBIs/WkQqN457qbVDS28X/Ri+PaI/ks+R197uD2nochbWTZRlrl/926odjnPkG2IZy8RIhO0+HsTKqkM1/9HSOkKXEJ9KM2h77xXRxBZr9TrP/Hk3vwU6uPXmk/ku+kNlzlsqcmZfEd/bImOHgxz5dy2e3S704t+1b/v8bdjGL9UNAAA+4BE5B3UDAHDhETkHdQMAcOEROQd1AwBw4RE5B3UDAHDhETlHX7d/AeE7URU2PLVcAAAAAElFTkSuQmCC" alt="" />
aaarticlea/png;base64,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" alt="" />
开始进行会话了,
客户端:你好吗?
服务端:我很好,你呢?
客户端:I'm fine too!
aaarticlea/png;base64,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" alt="" />
咱么断开客户端,看看你服务端的反应:
aaarticlea/png;base64,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" alt="" />
若是断开服务端:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqEAAAEgCAIAAAALxD3pAAAgAElEQVR4nO3d369dR3XA8fM/9NE/KqUI3RTUB7+gXAc1krGquqYQB5XGlZ2o4qFEbqW+YLVyqGhVfsSFW34pQJvSBAwh5YeSUgUwSU4SVZXBCExiUhq1wlQCqbGdxElJUh5uH66975yZtdas2Xufs8+Z/f1odHXO7Nkza8++e9bZ5xxfT3bv3r1r166nnnrq+9///tmzZ3fu3Lljx44dO3acOXPmzJkz4YOw3lO5Vb8DAHQ33HDjrzz4pqbcprjhhhubsr5+0/XXvzEq6+s3XXfdr1VfxGO/8cbffN3rXnfdddft3v2ru3bt3rlzV7OSY+Qmu3fvfuaZZ/Zv3EGhUCgUCqWmMtm6j9+/ccfh0ycpFAqFQqG0Lv/29rcvQ2nimezatWvnzp3keAqFQqFQOpbBs7uQ48+ePUuOp1AoFAqlYxk8u3MfT6FQKBTKXMrg2V3I8Tt27CDHUygUCoXSsQye3cnxFAqFQqHMpQye3cnxFAqFQqFkyppJ22vw7E6Op1AoFAolUxac4zc3Nzc3N+2a+eb4O+4/+cef/ZCnvPuLd936rbsGP0MUCoVCobQrRiKf0318mNS7JPiWOf6fvvbQ2R+cP/uDp5Ny/nvnzn/v3PmHvvnEQ994/KFvPP6FB756y1feN/gZmimnjuxZW1tbW9tz/MSBo2tr+48cOn3y8OmT4WPKKpbqz+biD9AeZZBJrvLMHh7Bb+9Kl8Xn+Ca1d0zwLXP86ceeePW11155NVNefe21048+fvP9dw5+hoJybH1tbc/xE4dPnzx8+sS+/f1cV4eO711bO3igrObYevh2z9FjpUP4yol9+7cHuXbg18rGQXVTM2gS2IGjzU57951SQ913fK/4vpY4UIuT2FjfCAK7egZnzmzvZSQHeCBzURTH0HR7KJ46+RdJLPPOf9Wf3MPC/K+tb1xbDaLrfeuO6Ogxda+5BblUZW2IHN/9Dr59jn/siSf//T/++4P3PPqhzz5y173fPvn50x/+4rd+9KP/unzp4k8vXPjphQuXLl38zIPf/cyD3126HH/qyB5lQemwdpzYtz+6NjI1W1fLzBWycdBM82mHrnLgaLAqnTqyJ1ykNg5ur63RpvCVweygh47vbcI+dHyvtDonoYYDdS7p1B04erXzvlf/Y+vyKjaiA+x1xO1uDx3fO9NtkEiyZc45vvqTey0Maazkik5WrbG+uzBIjh/yPv6xx5/88bM/+6OPPPTujz147FNf/ZN7vvyn9z1w7tyzly/+T5jj73n4zNLleP2KbX+Npa8b7JoWq4b+0qSoxPcKwVo2cwFvHNx6fOCoufKeOrInXUfSUHtcJc2uFrRKjukA+xwx6FbKFuEbbFaZb46v/uSe1uZ/q8y8hRC9d7haOV58G8bIx9neWmzq6w5+gM/jv/Xtx3787M/uvO+bd3zqy0c+/o+3fvLTt376E+fOPXv54nMXLly4cOEnly5dvO+JJ7/43UeXKscHbzJffXvQ+gzs2sf2a2thvfA2WnpxmjUn9u231zJrCLPn7fcAtWt7u3GanqUFqEWOF5YqdWkL3rSMzkI4+dsBZKau5dk8eix4E/Lqiha9LRkOOqoDNKMVXjKmA4nditki/jRKPiI7pPiFQjxLMx9OHUvfG6v+5G5PtZatm4s6ubpHnuMN2l49vkW/6O/Vb+X4W07e89sf/PhbN/727Z/8m1s+88Gt+/gLF36ydR//lacefvCZh5Yqxx8+HV+x6nU10yxMumkCTu8/zBrx3nemmENEK852bzODHjguXYrhG/Ke9x4yOV78+EC6GxNXyY2DM6vPqSP7Nq6NGC5k4bu4ualreTa3wzi2niSMZLhxHaAY7cxW10Bxt3K2UN/rSr43o4Zk5fjoffKr/ehB1nhyT1rzH25d27snubpXK8cvQ+n4Xn1fpYmnOMf/zsmP/e5HP3Lz3Sff8fcf+P37/nLrPr55r/78z8+f//n51czxJ/btn708jLfKNw7Gtyx2TbxkhF/AUb5SN9PhzN3A9q1P9qXD1nIjLxzbDYSb8jiLb39UL9yUpMcujqV/veDA0XgeZo/Rete0/GzGL6dmbyWlVXJkB2hFa35NLL4pn+1Wz/Fb8VgXoBmSkePT/C1+9F71yZ1pGYqOeusaj6citxclLoNn9645/m2f+PAtn/7Q7/3DX9/6ufcduf/EuXPPXgo+j3/t1Vdee/WVlczx4TtjAdfXr7I1yqWuf23e+OA8zPfXUq/6VZr0TcuO9/HpF4iUtc/3eiI9I/Hu7VZJ62xKc2utkqM7QPu968zXO2ZfmKpf/kh/A80L0AxJz/HCGYmiqv7knpxpqd+RHzi6trb/4Dr38Z3L4Nm9a45/x9994J33/tUfnPqL2x748z/86nvOnXv24nPXcvzFiy+//NILzz+/ujne9c9C0pb5Gvm7RWqONzqU32+PMv3V3C99M67z5/FRA23e+lolc1/LKj+bhavk+A6wnxzv+2TX+abUvHJ89Sc3mmotW28cXKvi8/hlKINn9w45/pHpD5/+z7u+9sDJB+//8D+f2viXz3304Xu/850fNjn+4nPPXXnxhUuXLq1kjnd/xTf9pffWyO+DCTlevK62Mqv4j9evHWNw0yPfPcTfADIGMmYgbKAuAcKrB3WG03c743Okv0NYfjbLVskRHmA+WkeO91wUs0dhXYBmSMb7EPK3ZMbz2xsWPVsncxIcOzm+tAye3dvn+G+cfuyXv/y/Ky9evvLC5SsvXH7pypWXrrzw0ovPv/KL/331lV+8/PJLL7744vPPX37++curmeOTd6FPHdlz9fc+/Ays8Nt222Xr3npm4Qiuf3uI7aPYs38mwnXhH76bL1aSfx+frghJjj+2Hn2qur2XPpb0DkE8wxsHgxclwaDB6xVl6k7s2y/8Q6+Cs2muksERjfEA7Wh9OV7oNs4WyV9f0Y/IEdLMd1+iFDt77W/3M4qTm31Bk7wKOba+NhsJOb6kDJ7d2+f4u7/w+dOPPp6WR6ZPPvbEvz7y2BNNzadOfe7mL7138LneLs7v1UdfMIne+t56ml78npqZTaHZDy+1Ia6WmWtv+1iumsncidkX5jOf8MVFuI+f6TP6UpVxpNKmcAbCFXz/kQNmYLPf/el8NtVVcjvCPcdPjPMA7WhdOV7PkQHlHSzhiLITOPPnm6JZCq6RtfWNIObqT670N7hmbM2V/B1M9e/ctfirXJQBS0GOf+fX33/zl9578/135suX3vvOr79/8GObR0nzn6em4xBLW/oKVfhEczkKB7hU3fZRZv+cX9Unl0I5zP8tW1bafNuu8xBLW/oLdUlXSQ5wqbrtN7bqTy6FcvrkYXI8ZRlK9atk9Qe4tOXQ8b3x59N9nwhOLmWZCzmeMnypfpWs/gCXuYSfx8/rgwlOLmVZCzmeQqFQKJQ6CzmeQqFQKJQ6CzmeQqFQKJQ6CzmeQqFQKJQ6CzmeQqFQKJQ6y2TXrl1vu/st5HgKhUKhUCor+fv4t372PRQKhUKhUFallOX4STfT6bRjD70rDcnTXmuzhIcPAFgJm5ubLxRqmeOns9KajklO7MrTfzvzTvPhIbQbEQAwcgvN8c2oTY4PQxFzWPo6QMvWdoLU+nfSwnC+THGOTo4HAPRoqXO8mDW1VDfvHN+imfPVgLiJHA8A6Ggpcryd8sMH9o1ymkG1tGp3klaKj41mLRqLkZTGb0TieW1RGpUnkl7i9wzhGbe03h7UH3+t8691bg/qnJ9sPwCyBv48vonDvoZbXORN+xY7GruI67LW3u6ndBcnbaG0H4s72j333r6omdFYG7e0vl2c45l/z3HZs9GlHwAeS3Efb2h9nafD+RnLt7OyaJM4M5ooSLGmxRqaPhVjjvadR3tj8p0Ba+OW1mcx/9njEmNoMT/Z4AGItBx/++23LyLHR8LIoitcrA9rnJzzIo6S1tsdGlu1TtJdtE60I7IP09ianZ+mgXM+S9vbYaQ92C3TcUvrPdLG45l/bS/tsd2/Z/RM6AASYo6//ZpF3MeHy0HzIF0XorizK464V7SvvfZlV7TsoiMOJO6bToL41CMbdummtM00yBw9tvdHErZM51Mbt129cdbEgMcz/8YuxqS1mIQWIQHYkub422f1meOjyz78GT5oiIusfcFHW1uvDuKO6eh2PHac4tPwgf+os5Eb9famtFl4+uy9StsXBRO1TB+n45bWl8Zgx1/f/Gfbi5tK56c0HgChKMeHqV1L83O5j8+uVsbTprLjGqq1DxdKexdPnNruk8Ip0qIqWljtTWLLpnHpnDgHstf69Lxoj9NNpfXtQh3P/Gf77D4//skBIBJzvPZ0mBwvrgjR0y6Ll7/ZVKe1zw4XtiyaIm1oeyH2L9Np/56nXdp3icc4xuZpab3NjlOrGcP8e/rRajyPAfilOT59636+OT7alBKXIbFZyKi0xzKaaZtK6+3Rw8lJf3p2tyfBWGG1YLQh+m1vx5k9ZM+4pfX2uEYwYQP7uLQRi46rl/Z2nEaERlee9qX1APwW9G/n0qtd/JkS67OV4TJh71Wke5Da7uKCKP4EAMBp0Tk+Slp2DjbSXmoxOV5jx+PpWawhxwMAWltEjhdT9SSX1EsTp5h0s5m4iP8+vvexeokfADAqi/s7d1uKbqzJagAAtLZKOd7zDnlpSwAAarW5ufm9Ekt0Hx91ZaRzcjwAYIQWmuO1rKxlaPtOXXxKjgcAYMuQOT6NZhp83964NTdqxGQvtudtfABA3RaX48OE6rnb1hrb+3pyfBQJaR4AUKUBcrzzDfn55fhoR3I8AKBKC8rxYnbf4szx6Rv44hsD0Q262DgcggQPAKjVInK8fW+tpf+O9/FGm+YpCR4AULHhv3PneQUQIscDAOAxTI73pPPs/X1Uqb0hb+8IAECtlijHTwrflhcrm1cG6Sfx3McDAEZlgBxvJPL0sfM+3oMcDwAYlcE+j/dXem7uPcjoAIBR6SHH/9bD97bL8c479fR9+KIjbLcXAACrbuD7+HYJuxQJHgAwQov+f+daWMIMPY+XJlqbJTx8AMBKWPTfso2+6J5WppxJTuzK0387807z0ScULUYEAIzcQnN8M6r4Gbn25TuR2DJ9LFa2oIXhfJniHJ0cDwDo0eK+c9cix4tZU0t1887xLZo5Xw2Im8jxAICOluI+3k754QP7RjnNoFpatTtJK8XHRrMWjcVISuM3IvG8tiiNyhNJL/F7hvCMW1pvD+qPv9b51zq3B3XOT7YfAFkDfx7fxGFfwy0u8qZ9ix2NXcR1WWtv91O6i5O2UNqPxR3tnntvX9TMaKyNW1rfLs7xzL/nuOzZ6NIPAI+luI83tL7O0+H8jOXbWVm0SZwZTRSkWNNiDU2fijFH+86jvTH5zoC1cUvrs5j/7HGJMbSYn2zwAEQD5/hIGFl0hYv1YY2Tc17EUdJ6u0Njq9ZJuovWiXZE9mEaW7Pz0zRwzmdpezuMtAe7ZTpuab1H2ng886/tpT22+/eMngkdQGL4+/hwOWgepOtCFHd2xRH3iva1177sipZddMSBxH3TSRCfemTDLt2UtpkGmaPH9v5IwpbpfGrjtqs3zpoY8Hjm39jFmLQWk9AiJABbhv88vrl608tYXGTtCz7a2np1EHdMR7fjseMUn4YP/EedjdyotzelzcLTZ+9V2r4omKhl+jgdt7S+NAY7/vrmP9te3FQ6P6XxAAgty318drUynjaVHddQrX24UNq7eOLUdp8UTpEWVdHCam8SWzaNS+fEOZC91qfnRXucbiqtbxfqeOY/22f3+fFPDgDRCuR4cUWInnZZvPzNpjqtfXa4sGXRFGlD2wuxf5lO+/c87dK+SzzGMTZPS+ttdpxazRjm39OPVuN5DMBv+BwfbUqJy5DYLGRU2mMZzbRNpfX26OHkpD89u9uTYKywWjDaEP22t+PMHrJn3NJ6e1wjmLCBfVzaiEXH1Ut7O04jQqMrT/vSegB+C8rx6dUu/kyJ9dnKcJmw9yrSPUhtd3FBFH8CAOC06BwfJS07BxtpL7WYHK+x4/H0LNaQ4wEArS0ix4upepJL6qWJU0y62UxcxH8f3/tYvcQPABiVwf7/+NKMNb8M5+zZn+C78/c5j5cXLYbODtrxXY3W+n0jBwBWy+bm5guFBsjxnsbpLbvnHfWiSMSEYbwt0UXrVx6LyWTp+yX20NoZEXcR38PInkdjXLFbey9nqACwzFYgx7fIdmLK0dKJfzUXE0b6oAUtDDEwf+Pe05LWsz0Jxla7vRZDPlCpsbFjOsMdxwWAZbCgHN8uIRWlrnQ11/JQ1L/RjxbGZA45vl0zT808aHNrx+OM1jiEoqOLhjZ+kaIHpVEBwHJa6vt4rU1pjrdTfvjAv44bCcOIU2zcOsFrQ3h6M3ZpcWjZM9WcAqPnFvNpy06y+DuQbTxRzqMRRva4Wpw1D23Q1vNcFGr2t6JdP/Zv0fz68TQuPZVRe7FzY9xsMP5IUKuF5vipsuaWrgXG1RX+xnuGCPc1Gjj7sfsMa8QR04u5dMlowY4zfKqF54k5PSNhvViTRtX6uMR9xV8P+0jFnrOBhX2KwXg6acEZs/007dAI1dOPf8a09v6A7XFL+3E28J9K5++VZyazR4fRWvR9fPhLmVZGiurTDkuvfONaSnvWRFtLxzKGTruyabuInWhxaqGmu3iOItuP0dgzXVH7qfRrIPYTDeofy3kei1q2o51fz+Op+XsbtdSOIttPtoeifrSn/sjtfuz5LB0l3dEz2/a4WhvnPGMkhs/xzssmIjaOHtt7RVeFWK/1rG3V+hdHzF6B/kvUE5U2ddlItL20p9mjtk9ldFLEXZxTJzazK6MdW8xMUWPxiIyDtefNiCc9C/bo2u7aEGm9v2W7fvwN2vXjnJlokxa/dlCeWWrXxjktqN4icvy0RBiccUXZlc31E9bb10PaW3QJiS2Nq0i8xoyDTVsaW7ON/bvbkRjry0SZFu1EeNprbdKnBnuUKCR7qx1n6Tkyfp+jgaJf4OhB6ejO/rWes+P6K+3Ii/rxbO23n+kscV9/P1p7rf+03rPJjgRjMMx37sRfSrGZvz79dQ9/intNddqI0cXZ7hqzr2Gbc0K0ltlgWh9COq44aUZ7o16syXIGk1Zm45wMl+OzvwzZcaMetNHF9unQWiTzrrc3za+fdBd7frR97fZFs1HUA8ZmgBw/lRKwSLwYjN9+Y4jsQMZTsZPsEMY15rn8iq5PLeB00I6ribHJbp9GZZ9HzxFlaeNqwTQhhW08J8sZjHM+ozDCp0YkYqjGmYqO0RNnUWPj/Jb+8vj7MZT2Y596f2999WPUl04pRmXZP4/310dLj/jT2ZtWUzREx7WpdP3S4ozG9a8FdmN70tKpyLbRusq2N9bQ7Ljab6Pzl7P0HNmHkD5tfkYPxN7SedDaG82yx2XHYByUUd9XP7bSfvzzafeW9qO1L33c7rgwNovL8ekFEz7Wfk3FoLONp+6VWtxqX5Bh5+nPsJm2THiuvaLrU5vY7F5anJPcGpE2nugTnq03urIbT8wpFbvKzpXRID2VYkhGkOIkR1vF3xm7n+ygYp9RvdFeHF2LQevHqC+Nf1Iy/331M8nNv73V094O0qjXGhcdHaq0uO/cRQOLNekvqxh0trepnoCzXYm9abF5hminqLfFX8bhiOlj7TymW40z7vllsJcwz8m1Gzh/IQFgOS3737nTaL1FSddYr9MaI1Vr+84jx7fobZG5x5jhpoGR4432/lcGRaGKkTt3mSS/hKUxAMCAlj3He+rt3KC1dOZyZ2z9JoDSrhace7LD+c9IXyM69ypN8ACw0gbL8QAAYK7I8QAA1IkcDwBAncjxAADUaUE53vhmcl/fVjO++bwS34heiSABACtksL+B0+glt4X//mp+LyO0oXvphH+dBQDoV205fsF6fxOCHA8A6MvAOd6oLEp79guIaKvReYtBs0N4+ifHAwB6N/x9fKppOdXffk/bGzlSTMD+x55QtUp//yR4AEC/asjx2TZFOd5+ueAZlxwPAFgG5Hgr7/pD1Sp7HAsAgCLk+E45OAy1qM+0f7I+AKBfw//7+JSRko32YrNpYmLm2qI4o108IWVDdQ4KAEAWf+cOAIA6keMBAKgTOR4AgDqtQI5fwk+pS0Nyfguhl7EAANiy6O/Vp999y37NzZnkxK48/bcz7zQfHkK7EQEAI7fQHN+M2uT4MBQxh6WvA7RsbSdIrX8nLQznyxTn6OR4AECPljrHi1lTS3XzzvEtmjlfDYibyPEAgI6WIsfbKT98YN8opxlUS6t2J2ml+Nho1qKxGElp/EYkntcWpVF5Iuklfs8QnnFL6+1B/fHXOv9a5/agzvnJ9gMga+DP45s47Gu4xUXetG+xo7GLuC5r7e1+Sndx0hZK+7G4o91z7+2LmhmNtXFL69vFOZ759xyXPRtd+gHgsRT38YbW13k6nJ+xfDsrizaJM6OJghRrWqyh6VMx5mjfebQ3Jt8ZsDZuaX0W8589LjGGFvOTDR6AaOAcHwkji65wsT6scXLOizhKWm93aGzVOkl30TrRjsg+TGNrdn6aBs75LG1vh5H2YLdMxy2t90gbj2f+tb20x3b/ntEzoQNIDH8fHy4HzYN0XYjizq444l7Rvvbal13RsouOOJC4bzoJ4lOPbNilm9I20yBz9NjeH0nYMp1Pbdx29cZZEwMez/wbuxiT1mISWoQEYMvwn8c3V296GYuLrH3BR1tbrw7ijunodjx2nOLT8IH/qLORG/X2prRZePrsvUrbFwUTtUwfp+OW1pfGYMdf3/xn24ubSuenNB4AoWW5j8+uVsbTprLjGqq1DxdKexdPnNruk8Ip0qIqWljtTWLLpnHpnDgHstf69Lxoj9NNpfXtQh3P/Gf77D4//skBIFqBHC+uCNHTLouXv9lUp7XPDhe2LJoibWh7IfYv02n/nqdd2neJxzjG5mlpvc2OU6sZw/x7+tFqPI8B+A2f46NNKXEZEpuFjEp7LKOZtqm03h49nJz0p2d3exKMFVYLRhui3/Z2nNlD9oxbWm+PawQTNrCPSxux6Lh6aW/HaURodOVpX1oPwG9BOT692sWfKbE+WxkuE/ZeRboHqe0uLojiTwAAnBad46OkZedgI+2lFpPjNXY8np7FGnI8AKC1ReR4MVVPckm9NHGKSTebiYv47+N7H6uX+AEAo7IC/388+uV8reB/QdN7JN3fFwEATMjxqyt9i8LzCcKk8IsC6WPtbZh0dM87KEXpXDvMvt6nAYDKkONXVZqA06Qr7uXPjkU53hlqdlPrVE2OB4AIOX5VtcjxYjrXmkWvAOaU47v04HlNAwBjttAcb6cTsdL5NmxR4xbttfg9Q3jGLa2fmDl+aqb88EHRsZeeFDFUu0PPwWqV/ngAYCQW/ffqw7HDGu2xuGNk3u2LmhmNtXFL68OnYUacJlm/+7EUHXKXTrIBT3KfxPtDBYCRWNC/nQvX4kZYoz1On6bSfefRXmuWbrJbpnuV1jc10WNPkjPm2e5ZI+5ldNiuTTZO5ygAMCpD3seHjK32jmEDMfd0b2+HIWY7o2U6bml901v0eJrQ4rej1UbRasJ+NOIunm6NMIywAQCTJcnx7TalbaLU2Fd7fyRhyzS9aeOW1je9RY/Dn9GDbDqMok0faDt6NmljeRhh+GMDgHEaPsdr9famtFmaGvtqXxRM1DJ9nI5bWp/2NjVzvLZLtHvUMn1g75V2UsTePTpwcZeOAQBAfQbO8WJldpPYciql1V7a283ShKd1ro1bWt88jR6nP41jMZ6KnWSHcJ4sIx6jh3AStBG7BAAAVVrG79VrNWG9llO1p13ad4nHOMbmaWl98zR6nP4UiYcm1hQNYYyYbeCM2R4xfWqcR389AKyuRX+vPs15aX24NY3YaGxvat3ejlOU7dwewhln9HgaTKwdW7YmGj0aYurIuJ5x03pPG2cA2skqrQeA1cXfuVtJRs4T85+2o9ab9pKi9xzvfMHhaUZ6BoAIOX4lRbfszU/7nthzN2zva7+MmOakjbWjK3oBYb+sAYDRIsevHi3/2Undmcv9g7bOqc59w2bt3iQAgJEjxwMAUCdyPAAAdSLHAwBQJ3I8AAB1IscDAFAncjwAAHUixwMAUCdyPAAAdSLHAwBQJ3I8AAB1IscDAFAncjwAAHXqIcc/ufFnpf9/fJf/0QQAAHgs4j6eHA8AwOKR4wEAqBM5HgCAOvGdOwAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBOPeT4t939FnI8AADLhhwPAECdyPEAANSJz+MBAKgTOR4AgDqR4wEAqBM5HgCAOpHjAQCoEzkeAIA68W/nAACoE/fxAADUiRwPAECdyPEAANSJHA8AQJ3I8QAA1IkcDwBAncjxAADUiRwPAECd+Bs4AADUift4AADqRI4HAKBO5HgAAOrE5/EAANSJ+3gAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTl1z/NNPP33mzBlyPAAAy6aH+3hyPAAAS4gcDwBAncjxAADUiRwPAECdyPEAANSJHA8AQJ3I8QAA1Il/Hw8AQJ34O3cAANSJHA8AQJ3I8QAA1IkcDwBAncjxAADUiRwPAECdyPEAANSJHA8AQJ3I8QAA1IkcDwBAncjxAADUiRwPAECdyPEAANSpa46/8cabbrjhRnI8AADLhhwPAECdyPEAANSJHA8AQJ265vh3vetdt912GzkeAIBlQ44HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOrE37kDAKBO5HgAAOpEjgcAoE7keAAA6tQ1x7/5zW9ZX7+JHA8AwLIhxwMAUCdyPAAAdSLHAwBQJ3I8AAB1IscDAFAncjwAAHUix5lGmmQAAADySURBVAMAUKeuOf4Nb/iN669/IzkeAIBlQ44HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOpEjgcAoE7keAAA6kSOBwCgTuR4AADqRI4HAKBO5HgAAOpEjgcAoE7keAAA6tQ1x19//a+//vVr5HgAAJYNOR4AgDqR4wEAqBM5HgCAOpHjAQCoU9ccv58cDwDAUiLHAwBQJ3I8AAB1IscDAFAncjwAAHUixwMAUKeuOf5N5HgAAJYS/z4eAIA6dczx/w//2ZBUPQWSFQAAAABJRU5ErkJggg==" alt="" />
总结:实验发现异步通信可以利用一个Socket进行多次数据传输,自己定义的缓冲区用于接收数据,如果定义的缓冲区很大不会发生拆包现象,如果很小则会自动按缓冲区大小分割。

C# Socket学习笔记二的更多相关文章

  1. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  2. WPF的Binding学习笔记(二)

    原文: http://www.cnblogs.com/pasoraku/archive/2012/10/25/2738428.htmlWPF的Binding学习笔记(二) 上次学了点点Binding的 ...

  3. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  4. JMX学习笔记(二)-Notification

    Notification通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知. 这里写 ...

  5. java之jvm学习笔记二(类装载器的体系结构)

    java的class只在需要的时候才内转载入内存,并由java虚拟机的执行引擎来执行,而执行引擎从总的来说主要的执行方式分为四种, 第一种,一次性解释代码,也就是当字节码转载到内存后,每次需要都会重新 ...

  6. Java IO学习笔记二

    Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...

  7. 《SQL必知必会》学习笔记二)

    <SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语 ...

  8. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(二) indigo tools

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

随机推荐

  1. [Hapi.js] Logging with good and good-console

    hapi doesn't ship with logging support baked in. Luckily, hapi's rich plugin ecosystem includes ever ...

  2. C# Datatable导出Excel方法

    C# 导出Excel方法  先引用下System.IO;System.data; 具体函数如下: public static bool ExportCSV(DataTable dt, string f ...

  3. css解决文字垂直居中

    参考链接: http://www.cnblogs.com/lufy/archive/2012/09/12/2681972.html   http://zhidao.baidu.com/question ...

  4. DevExpress gridcontrol添加了复选框删除选中的多行/批量删除的方法

    思路:遍历gridView1的每一行,该行中checkbox列被勾选则设置该行为选中状态,执行gridView1提供的DeleteSelectedRows方法则可 public void DoDele ...

  5. 实战 Spring MVC接入支付宝即时到账 (部分代码)

    下面就拿我项目中的部分代码来实践一下. 支付请求 首先,是提交表单 fund.jsp(这里我表单只需要用户填交易金额,其他的订单号之类的全部后台生成) <form id="deposi ...

  6. 对boost::shared_from_this的进一步封装

    对boost::shared_from_this的进一步封装 熟悉异步编程的同学可能会对boost::shared_from_this有所了解.我们在传入回调的时候,通常会想要其带上当前类对象的上下文 ...

  7. a^b的前n位数

    假设我们现在需要知道 ab  的后 n 位数或前 n 位数,简单直观的做法就是求出 ab  的值,然后在分别取前 n位或后 n位,不过在 a,b很大的情况下显然是无法存储的.所以,直接求是不可能的了. ...

  8. (转)eclipse 代码自动补全

    转自:http://blog.csdn.net/yushuwai2010/article/details/11856129 一般默认情况下,Eclipse的代码提示功能是比MicrosoftVisua ...

  9. ORACLE11G常用函数

    1 单值函数 1.1 日期函数 1.1.1 Round [舍入到最接近的日期](day:舍入到最接近的星期日) select sysdate S1, round(sysdate) S2 , round ...

  10. UML中九种图的理解

    1.用例图. 用例图是用来描述用户需求的,从用户的角度来描述系统的功能,并指出各个执行者.强调谁在使用,系统的执行者是谁. 2.类图. 用来定义系统中的类,包括描述类的结构和类之间的关系.类图的主要作 ...