Socket客户端

Posted 凡是过往,皆为序章。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Socket客户端相关的知识,希望对你有一定的参考价值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Net.Sockets;
using System.Net;

namespace IClient

{
class Program
{
static void Main(string[] args)
{
int port = Convert.ToInt32(Console.ReadLine());
string host = "10.248.87.202";
IPAddress ip = IPAddress.Parse(host);
IPEndPoint ipe = new IPEndPoint(ip, port);//把ip和端口转化为IPEndPoint实例
Socket c = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//创建一个Socket
Console.WriteLine("Conneting...");
c.Connect(ipe);
Thread t1 = new Thread(new ParameterizedThreadStart(Send));
Thread t2 = new Thread(new ParameterizedThreadStart(Recive));
t1.Start(c);
t2.Start(c);
Console.ReadLine();
}
public static void Send(object temp)
{
while (true)
{
string sendStr = Console.ReadLine().ToString();
byte[] bs = Encoding.Unicode.GetBytes(sendStr);
((Socket)temp).Send(bs, bs.Length, 0);
}
}

public static void Recive(object temp)
{
while (true)
{
string recvStr = "";
byte[] recvBytes = new byte[1024];
var bytes = ((Socket)temp).Receive(recvBytes, recvBytes.Length, 0);//从客户端接受信息
recvStr += Encoding.Unicode.GetString(recvBytes, 0, bytes);
Console.WriteLine("Client:{0}", recvStr);//把客户端传来的信息显示出来
}
}

public static void Closed(Socket Socket, Socket temp)
{
temp.Close();
Socket.Close();
}

}
}

以上是关于Socket客户端的主要内容,如果未能解决你的问题,请参考以下文章

c# socket多连接(如何达到10万个客户端)

如何判断socket客户端连接断开

socket.io 客户端到客户端消息传递

C语言 UDP socket 简单客户端 编程,急

socket 服务器 | socket 客户端

客户端 SOCKET 编程