栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

.Net 6 and Quic

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

.Net 6 and Quic

关于.Net 6 中 Quic

Quic简介
目前该技术已经被 .Net 6 内部集成 System.Net.Quic,未来开发低延迟的项目将更加简单。


文章目录
  • 关于.Net 6 中 Quic
  • Quic场景
  • 一、创建QuicListener
  • 二、建立连接 QuicConnection
  • 三、QuicStream
  • 总结


Quic场景

这里不得不说到 HTTP 3.0 协议, 让网页加载变的一块再快,游戏行业,发包率频繁的行业都是不错的 场景 本身就是基于Udp的上层协议,最大程度的降低了开发 高频率,低延迟的应用复杂度,对核心技术的要求大大降低。


一、创建QuicListener

代码如下(示例):

using System;
using System.Net.Quic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            var options = new System.Net.Security.SslServerAuthenticationOptions();

            QuicListener quicListener = new(System.Net.IPEndPoint.Parse("192.168.1.22:666"), options);
            quicListener.Start();

            QuicConnection quicConnection = quicListener.AcceptConnectionAsync().Result;
			QuicStream quicStream = quicConnection.AcceptStreamAsync().Result;
            Console.WriteLine("Hello World!");
            Console.ReadKey();
        }
    }
}

二、建立连接 QuicConnection

代码如下(示例):

using System;
using System.Net.Quic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            QuicConnection quic = new(System.Net.IPEndPoint.Parse("192.168.1.22:666"), new System.Net.Security.SslClientAuthenticationOptions());
            quic.ConnectAsync().AsTask().Wait();
            QuicStream quicStream = quic.AcceptStreamAsync().Result;

            Console.WriteLine("Hello World!");
            Console.ReadKey();
        }
    }
}

三、QuicStream

代码如下(示例):

using System;
using System.Net.Quic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            quicStream.WriteAsync(System.Text.Encoding.UTF8.GetBytes("哈哈哈"));

            byte[] buffer;
            int count = quicStream.ReadAsync(buffer = new byte[1000]).Result;
            string str = System.Text.Encoding.UTF8.GetString(buffer, 0, count);

            Console.WriteLine(str);
            Console.ReadKey();
        }
    }
}

总结

提示:目前 System.Net.Quic 还在完善中,后期会更加理想,一起期待吧!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/906981.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号