当前位置: 首页 > news >正文

做冷饮的网站做漫画在线观看网站

做冷饮的网站,做漫画在线观看网站,用wordpress做的站点,做设计什么网站平台好点做私活C# 中的 System.Net.Sockets.Socket 类是 .NET Framework 提供的核心类,用于处理网络套接字编程。Socket 类是用于网络编程的基础类,它位于 System.Net.Sockets 命名空间中。 使用 Socket 类,可以创建客户端和服务器应用程序来进行基于TCP、…

C# 中的 System.Net.Sockets.Socket 类是 .NET Framework 提供的核心类,用于处理网络套接字编程。Socket 类是用于网络编程的基础类,它位于 System.Net.Sockets 命名空间中。

使用 Socket 类,可以创建客户端和服务器应用程序来进行基于TCP、UDP和其他网络协议的通信。

 

以下是如何在 C# 中使用 Socket 类进行基本的 TCP 服务器和客户端通信的步骤:

TCP 服务器端实现

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;namespace SocketServer
{class Program{private static byte[] buffer = new byte[1024];private static int port = 8885; // 定义服务器监听端口static void Main(string[] args){// 创建一个 IP 地址对象,绑定到本地主机IPAddress ipAddress = IPAddress.Parse("127.0.0.1");// 创建一个新的 Socket 对象,指定为 IPv4、面向流(TCP)协议Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);// 绑定服务器 socket 到特定的 IP 和端口IPEndPoint localEndPoint = new IPEndPoint(ipAddress, port);serverSocket.Bind(localEndPoint);// 开始监听连接请求,最大同时排队的连接数为 10serverSocket.Listen(10);Console.WriteLine($"启动监听 {serverSocket.LocalEndPoint} 成功");// 启动线程等待客户端连接Thread listenThread = new Thread(ListenForClients);listenThread.Start(serverSocket);// 等待控制台输入以保持程序运行Console.ReadLine();}private static void ListenForClients(object obj){Socket listener = (Socket)obj;while (true){// 接受一个客户端的连接请求Socket clientSocket = listener.Accept();// 发送欢迎消息给客户端string welcomeMessage = "ServerSayHello";byte[] data = Encoding.ASCII.GetBytes(welcomeMessage);clientSocket.Send(data);// 在单独的线程中处理来自客户端的消息Thread receiveThread = new Thread(ReceiveData);receiveThread.Start(clientSocket);}}private static void ReceiveData(object obj){Socket clientSocket = (Socket)obj;while (true){try{// 接收客户端发来的数据int received = clientSocket.Receive(buffer);// 将接收的数据转换为字符串并输出string message = Encoding.ASCII.GetString(buffer, 0, received);Console.WriteLine($"接收客户端 {clientSocket.RemoteEndPoint} 消息: {message}");// 实际应用中,这里可能需要对消息进行响应或进一步处理}catch (Exception ex){Console.WriteLine($"接收异常:{ex.Message}");// 关闭连接clientSocket.Shutdown(SocketShutdown.Both);clientSocket.Close();break;}}}}
}

TCP 客户端实现

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;namespace SocketClient
{class Program{private static byte[] buffer = new byte[1024];static void Main(string[] args){// 设置要连接的服务器地址和端口IPAddress ipAddress = IPAddress.Parse("127.0.0.1");int port = 8885;Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);try{// 连接到服务器clientSocket.Connect(new IPEndPoint(ipAddress, port));Console.WriteLine("连接服务器成功");// 接收服务器发送的消息int receiveLength = clientSocket.Receive(buffer);Console.WriteLine("接收服务器消息:{0}", Encoding.ASCII.GetString(buffer, 0, receiveLength));// 发送多条消息给服务器for (int i = 0; i < 10; i++){Thread.Sleep(1000); // 模拟延时string sendMessage = $"ClientSendMessageHelp{i} at {DateTime.Now}";byte[] data = Encoding.ASCII.GetBytes(sendMessage);clientSocket.Send(data);Console.WriteLine("向服务器发送消息:{0}", sendMessage);}}catch (Exception ex){Console.WriteLine("连接或通信过程中发生错误: {0}", ex.Message);}finally{// 关闭连接clientSocket.Shutdown(SocketShutdown.Both);clientSocket.Close();Console.WriteLine("发送完毕,按回车键退出...");Console.ReadLine();}}}
}

以上代码分别展示了如何创建一个简单的 TCP 服务器和客户端,服务器会监听客户端的连接请求,并在建立连接后与客户端交换数据。

客户端则尝试连接到服务器,并发送和接收数据。

 

请注意,使用Socket进行网络编程需要对网络协议和通信原理有一定的了解。

如果需要更复杂的网络通信功能,可能需要使用更高层次的网络库或框架,例如TcpClientTcpListener

 

Socket.Connected 不能作为TCP连接的判断依据

Socket.Connected 不能作为TCP连接的判断依据-CSDN博客

 

http://www.yayakq.cn/news/201777/

相关文章:

  • 厦门城乡住房建设厅网站首页中国贸易服务网
  • 大同市建设局网站本周最新新闻
  • 用最少的钱做网站网站建设的步骤过程
  • 湖南北山建设集团网站盐城企业做网站多少钱
  • 有了云服务器怎么建设网站网站开发手机模拟器
  • 济南 域名注册 网站建设广州市住房和城乡建设局网站
  • 网站的制网络规划师多少分合格
  • 医院网站建设技术方案ppt东莞短视频推广哪个平台好
  • 彩票网站net网站开发找那家女生网站开发
  • 成都家居网站建设学校网站建设基本流程
  • 做个平台网站怎么做跨境电商怎么做平台
  • 上海网站建设公司有多少家企业网站建设 电脑配置
  • 湖北创研楚商网站建设销售人员网站seo优化很好徐州百都网络点赞
  • 深圳网站备案拍照点万网封停慧聪网域名事件
  • 网站换模板有影响吗宜昌网站建设哪家好
  • 做网站怎么收费的免费网站建设设计制作公司
  • 做网站软件A开头的怎么在网站上添加广告代码
  • 广州 骏域网站建设专家大理建设招标有限公司网站
  • 广州网站改版设计公司前端接私活一个页面多少钱
  • 公司做网站济南做个网站费用
  • 网站编辑的栏目怎么做君隆做网站怎么样
  • 做网站图片为什么不清晰太原网站维护
  • 网站制作中的更多怎么做成都优化教育百度推广
  • 公司网站抬头用什么软件做网站搜索引擎优化方法
  • 五一电子网站建设wordpress 用户导入
  • 犀牛云做网站推广怎么样如何找有需求做网站的公司
  • 网站建设制作多少钱涿州建设局网站
  • 大学做视频网站六安网站价格
  • 网站快速备案安全吗网站更改关键词
  • 好的网站建设价格江苏省现代化示范校建设网站