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

互联网怎么做网站张掖市作风建设年活动网站

互联网怎么做网站,张掖市作风建设年活动网站,网站建设好了却收不到,企业邮箱域名解析Tool.Net 支持的 P2P 服务器模型实例 说明服务器部分相关代码相关调用实例Tcp版本Udp版本 最后附一张思维图 说明 当前文章,仅是Tool.Net 开源库的一个缩影。本次更新V5.0版本以上提供支持。可以提供简单实现P2P功能用于业务开发。 服务器部分相关代码 完整代码&…

Tool.Net 支持的 P2P 服务器模型实例

  • 说明
    • 服务器部分相关代码
    • 相关调用实例
      • Tcp版本
      • Udp版本
    • 最后附一张思维图

说明

  • 当前文章,仅是Tool.Net 开源库的一个缩影。
  • 本次更新V5.0版本以上提供支持。
  • 可以提供简单实现P2P功能用于业务开发。

服务器部分相关代码

完整代码(适用于自定义的场景).

using Tool.Sockets.Kernels;
using Tool.Sockets.P2PHelpr;
using Tool.Sockets.TcpHelper;
using Tool.Sockets.UdpHelper;await Console.Out.WriteLineAsync("P2P服务器·支持“TCP” OR “UDP”");static async ValueTask Completed(UserKey a1, EnServer b1, DateTime c1, string name)
{await Console.Out.WriteLineAsync($"[{name}]IP:{a1} \t{b1} \t{c1:yyyy/MM/dd HH:mm:ss:fffffff}");
}EnumEventQueue.OnInterceptor(EnServer.SendMsg, false);
EnumEventQueue.OnInterceptor(EnServer.Receive, false);
EnumEventQueue.OnInterceptor(EnServer.HeartBeat, false);TcpServerAsync tcpServerAsync = new(NetBufferSize.Size8K, true);
UdpServerAsync udpClientAsync = new(NetBufferSize.Size8K, true);string ip = "0.0.0.0";
int port = 11111;tcpServerAsync.SetCompleted((a1, b1, c1) => Completed(a1, b1, c1, "TCP"));
udpClientAsync.SetCompleted((a1, b1, c1) => Completed(a1, b1, c1, "UDP"));tcpServerAsync.SetReceived(async (receive) =>
{using (receive){if (P2pServerAsync.IsP2pAuth(receive.Span, out var ipnum)){string ok = $"[TCP]{ipnum}->{receive.Key} \t{DateTime.Now:yyyy/MM/dd HH:mm:ss:fffffff}";using var sendBytes = tcpServerAsync.CreateSendBytes(receive.Client, 16);sendBytes.SetMemory(P2pServerAsync.TcpTop);sendBytes.SetMemory(ipnum.Span, 4);sendBytes.SetMemory(receive.Key.Span, 10);await tcpServerAsync.SendAsync(sendBytes);await Console.Out.WriteLineAsync(ok);}}
});udpClientAsync.SetReceived(async (receive) =>
{using (receive){if (P2pServerAsync.IsP2pAuth(receive.Span, out var ipnum)){string ok = $"[UDP]{ipnum}->{receive.Key} \t{DateTime.Now:yyyy/MM/dd HH:mm:ss:fffffff}";using var sendBytes = udpClientAsync.CreateSendBytes(receive.Client, 16);sendBytes.SetMemory(P2pServerAsync.UdpTop);sendBytes.SetMemory(ipnum.Span, 4);sendBytes.SetMemory(receive.Key.Span, 10);await udpClientAsync.SendAsync(sendBytes);await Console.Out.WriteLineAsync(ok);}}
});await tcpServerAsync.StartAsync(ip, port);
await udpClientAsync.StartAsync(ip, port);while (Console.ReadKey(true).Key != ConsoleKey.Escape) ;

相关调用实例

Tcp版本

P2pServerAsync p2PServerAsync0 = await P2pServerAsync.GetFreeTcp();
P2pServerAsync p2PServerAsync1 = await P2pServerAsync.GetFreeTcp();TcpClientAsync p2PClientAsync0 = new(NetBufferSize.Default, true);
var task0 = p2PClientAsync0.P2PConnectAsync(p2PServerAsync0.LocalEP, p2PServerAsync1.RemoteEP);TcpClientAsync p2PClientAsync1 = new(NetBufferSize.Default, true);
var task1 = p2PClientAsync1.P2PConnectAsync(p2PServerAsync1.LocalEP, p2PServerAsync0.RemoteEP);Task.WaitAll(task0, task1);

Udp版本

P2pServerAsync p2PServerAsync0 = await P2pServerAsync.GetFreeUdp();
P2pServerAsync p2PServerAsync1 = await P2pServerAsync.GetFreeUdp();UdpClientAsync p2PClientAsync0 = new(NetBufferSize.Default, true);
var task0 = p2PClientAsync0.P2PConnectAsync(p2PServerAsync0.LocalEP, p2PServerAsync1.RemoteEP);UdpClientAsync p2PClientAsync1 = new(NetBufferSize.Default, true);
var task1 = p2PClientAsync1.P2PConnectAsync(p2PServerAsync1.LocalEP, p2PServerAsync0.RemoteEP);Task.WaitAll(task0, task1);

最后附一张思维图

在这里插入图片描述

http://www.15wanjia.com/news/170372.html

相关文章:

  • 网站建设得缺点做爰全过程教育网站
  • 网站改版解决方案备案上个人网站和企业网站的区别
  • 青岛网站建设工作室织梦模板网络上哪里可以做推广
  • 4d网站广告图用什么做的成都网站建设 小兵cms
  • 公众号怎么做微网站网站改版的目的
  • 网站的内容管理系统python一般要学多久
  • 网站空间费用建设网站多少钱
  • 源码资源seo网络推广优势
  • wordpress用户名在那个数据表大连seo优化
  • 一个具体网站的seo优化方案页面跳转请记住新域名
  • 捡个校花做老婆是哪个网站的没有营业执照 怎么做网站
  • asp个人网站模板什么网站做任务能挣
  • 珠宝设计制作培训台州seo排名公司
  • 网站制作公司哪家价钱合理304hk 爱站网
  • 淄博网站制作定制品牌网站开发猪八戒
  • 上饶建站公司南京网站建设公司 w
  • 直播做ppt的网站有哪些wordpress 控制文章数量
  • 网站风格的设计城乡建设官方网站
  • 关于公司建设网站的意义网站文字大小
  • 怎么看网站到期时间沛县建设局网站
  • 徐州模板建站系统如何用虚拟主机建设网站
  • wordpress做过的大型网站吗免费行情网站排名
  • 南宁北京网站建设百度收录快的网站
  • 西安医疗网站建设wordpress的aware主题
  • 大悟网站开发宽带维修
  • 电子商务网站建设需求分析福田欧曼
  • 做再生料的网站高中生自己做 网站
  • wordpress 搜索过滤聊城seo
  • 网站博客程序早8晚5双休的工作
  • s上海网站建设姜堰区住房和城乡建设局网站