AsySocket类,谢
namespace Server
{
public delegate void StreamDataAcceptHandler(string AccepterID, byte[] AcceptData);
public delegate void StringDataAcceptHandler(string AccepterID, string AcceptData);
public delegate void AsySocketEventHandler(string SenderID, string EventMessage);
public delegate void AcceptEventHandler(AsySocket AcceptedSocket);
public delegate void AsySocketClosedEventHandler(string SocketID,string ErrorMessage);
/// <summary>
/// State object for receiving data from remote device.
/// </summary>
public class StateObject
{
// Client socket.
public Socket workSocket = null;
// Size of receive buffer.
public const int BufferSize = 1024;
// Receive buffer.
public byte[] buffer = new byte[BufferSize];
// Received data string.
public StringBuilder sb = new StringBuilder();
}
/// <summary>
/// 文件名称:AsySocket.cs
/// 描 述:异步传输对象
/// </summary>
public class AsySocket
{
/// <summary>
///
/// </summary>
/// <param name="LocalIP"></param>
/// <param name="LocalPort"></param>
public AsySocket(string LocalIP, int LocalPort)
{
mSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//private ManualResetEvent sendDone = new ManualResetEvent(false);
//private ManualResetEvent receiveDone = new ManualResetEvent(false);
//private ManualResetEvent sendToDone = new ManualResetEvent(false);
#endregion
#region 公共属性
/// <summary>
/// 消息的中止判断符
/// </summary>
public static string EndChar
{
get
{
return new string((char)0,1);
}
}
public string ID
{
get
{
return mID;
}
}