110,533
社区成员
发帖
与我相关
我的任务
分享
private Socket LocalSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
private int size = 1024*64;
private Thread ListenThread;
private byte[] bytData;
/// <summary>
/// 监听方法,用于监听远程发送到本机的信息
/// </summary>
public void Listen()
{
ListenThread = new Thread(new ThreadStart(VideoListen));
ListenThread.Start();
}
/// <summary>
/// 监听线程
/// </summary>
private void VideoListen()
{
bytData = new byte[size]
while (true)
{
LocalSocket.BeginReceiveFrom(bytData, 0, bytData.Length, SocketFlags.None, ref ipeRemote, new AsyncCallback(ReceiveVideo), LocalSocket);
}
}
/// <summary>
/// 接收数据
/// </summary>
/// <param name="iar"></param>
private void ReceiveVideo(IAsyncResult iar)
{
int intRecv = 0;
try
{
intRecv = LocalSocket.EndReceiveFrom(iar, ref ipeRemote);
}
catch
{
//throw new Exception();
}
第二次执行到LocalSocket.BeginReceiveFrom(bytData, 0, bytData.Length, SocketFlags.None, ref ipeRemote, new AsyncCallback(ReceiveVideo), LocalSocket);
private void VideoListen()
{
while (true)
{
bytData = new byte[size]
LocalSocket.BeginReceiveFrom(bytData, 0, bytData.Length, SocketFlags.None, ref ipeRemote, new AsyncCallback(ReceiveVideo), LocalSocket);
}
}