C#实现读取IPv6 UDP Socket数据,再发送出去。

不知为何,黑框点一下就停止刷新了,再点一下,就继续刷新了。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks; namespace ConsoleApplication1
{
class Program
{
static Socket s1, s2, s3;
static int s1_rxcnt = ;
static int s2_txcnt = ;
static int s3_txcnt = ;
static void Main(string[] args)
{
s1 = new Socket(AddressFamily.InterNetworkV6, SocketType.Dgram, ProtocolType.Udp);
s1.Bind(new IPEndPoint(IPAddress.IPv6Any, )); s2 = new Socket(AddressFamily.InterNetworkV6, SocketType.Dgram, ProtocolType.Udp);
s2.Bind(new IPEndPoint(IPAddress.IPv6Loopback, )); s3 = new Socket(AddressFamily.InterNetworkV6, SocketType.Dgram, ProtocolType.Udp);
s3.Bind(new IPEndPoint(IPAddress.IPv6Loopback, )); Thread t = new Thread(ReciveMsg);//开启接收消息线程
t.Start();
} static void ReciveMsg()
{
byte[] buffer = new byte[];
int length;
while (true)
{
length = s1.Receive(buffer);
s1_rxcnt++; s2.SendTo(buffer, new IPEndPoint(IPAddress.IPv6Loopback, ));
s2_txcnt++; s3.SendTo(buffer, new IPEndPoint(IPAddress.IPv6Loopback, ));
s3_txcnt++; Console.WriteLine("s1_rxcnt: " + s1_rxcnt.ToString("D8") +
", s2_txcnt: " + s2_txcnt.ToString("D8") +
", s3_txcnt: " + s3_txcnt.ToString("D8"));
}
}
}
}

输出样式:

s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:
s1_rxcnt: , s2_txcnt: , s3_txcnt:

Visual C#官方例子教程

https://docs.microsoft.com/zh-cn/visualstudio/ide/tutorial-3-create-a-matching-game?view=vs-2015

C#实现读取IPv6 UDP Socket数据,再发送出去的更多相关文章

  1. 项目总结22:Java UDP Socket数据的发送和接收

    项目总结22:Java UDP Socket数据的发送和接收 1-先上demo 客户端(发送数据) package com.hs.pretest.udp; import java.io.IOExcep ...

  2. UDP(socket)数据访问和封装情况C++代码

     配置QT下的pro文件 TEMPLATE = app CONFIG += console CONFIG -= app_bundle CONFIG -= qt   LIBS += -lWs2_32 ...

  3. 用java在客户端读取mongodb中的数据并发送至服务器

    使用Java自带的socket端口来实现,程序如下: Client.java package com.cn.gao; import java.net.*; import java.io.*; impo ...

  4. php从memcache读取数据再批量写入mysql的方法

    这篇文章主要介绍了php从memcache读取数据再批量写入mysql的方法,可利用memcache缓解服务器读写压力,并实现数据库数据的写入操作,非常具有实用价值,需要的朋友可以参考下. 用 Mem ...

  5. TCP和UDP Socket

    1.tcp协议的编程 * 1:客户端.步骤  *         1:创建Socket对象,构造方法里需要指定服务端的ip地址和端口.  *         Socket socket = new S ...

  6. Linux编程之UDP SOCKET全攻略

    这篇文章将对linux下udp socket编程重要知识点进行总结,无论是开发人员应知应会的,还是说udp socket的一些偏僻知识点,本文都会讲到.尽可能做到,读了一篇文章之后,大家对udp so ...

  7. 从网卡发送数据再谈TCP/IP协议—网络传输速度计算-网卡构造

    在<在深谈TCP/IP三步握手&四步挥手原理及衍生问题—长文解剖IP>里面提到 单个TCP包每次打包1448字节的数据进行发送(以太网Ethernet最大的数据帧是1518字节,以 ...

  8. 【转】Linux编程之UDP SOCKET全攻略

    转自:http://www.cnblogs.com/skyfsm/p/6287787.html?utm_source=itdadao&utm_medium=referral 这篇文章将对lin ...

  9. 一个I/O线程可以并发处理N个客户端连接和读写操作 I/O复用模型 基于Buf操作NIO可以读取任意位置的数据 Channel中读取数据到Buffer中或将数据 Buffer 中写入到 Channel 事件驱动消息通知观察者模式

    Tomcat那些事儿 https://mp.weixin.qq.com/s?__biz=MzI3MTEwODc5Ng==&mid=2650860016&idx=2&sn=549 ...

随机推荐

  1. C#反射与特性(八):反射操作的示例大全

    目录 1,InvokeMember 1.1 InvokeMember 参数 1.2 实践使用 InvokeMember 和成员的重载方法 微信平台,此文仅授权<NCC 开源社区>订阅号发布 ...

  2. Java 集合源代码——ArrayList

    (1)可以查看大佬们的 详细源码解析 : 连接地址为 : https://blog.csdn.net/zhumingyuan111/article/details/78884746 (2) Array ...

  3. 每天玩转3分钟 MyBatis-Plus - 2. 普通查询

    每天玩转3分钟 MyBatis-Plus - 1. 配置环境 每天玩转3分钟 MyBatis-Plus - 2. 普通查询 mybatis-plus的查询功能非常强大, 这一篇,我们来看下mybati ...

  4. Python的re模块,正则表达式用法详解,正则表达式中括号的用法

    Python的re模块,正则表达式 #导入re模块 import  re 1.match方法的使用: result = re.match(正则表达式,待匹配的字符串) 正则表达式写法: 第一部分: 字 ...

  5. 150行代码打造.net core生产力工具,你值得拥有

    你是否在初学 .net core时,被依赖注入所折磨? 你是否在开发过程中,为了注入依赖而不停的在Startup中增加注入代码,而感到麻烦? 你是否考虑过或寻找过能轻松实现自动注入的组件? 如果有,那 ...

  6. 如何构建可伸缩的Web应用?

    为什么要构建可伸缩的Web应用? 想象一下,你的营销活动吸引了很多用户,在某个时候,应用必须同时为成千上万的用户提供服务,这么大的并发量,服务器的负载会很大,如果设计不当,系统将无法处理. 接下来发生 ...

  7. 16、python面对对象之类和继承

    前言:本文主要介绍python面对对象中的类和继承,包括类方法.静态方法.只读属性.继承等. 一.类方法 1.类方法定义 使用装饰器@classmethod装饰,且第一个参数必须是当前类对象,该参数名 ...

  8. 创建自定义路由处理程序(Creating a Custom Route Handler) | 定制路由系统| 高级路由特性 |精通ASP-NET-MVC-5-弗瑞曼

    自定义实现 IRouteHandler

  9. axios请求方法封装.

    axios的使用上一般封装好对应的方法,ES6导出,直接调用,消息通知使用了ElementUI的Message组件. 这是一个封装了axios的Rest风格的工具类,包扩常用的POST,GET,PUT ...

  10. 在ubuntu18.04下搭建kvm

    前一段时间一直在尝试Ubuntu上搭建xen,一直出现各种问题,各种坑 首先先感谢下面这个公司对我的耐心解答,非常感谢.特别是后面来的电话对我进行了详细的解答,所以选择搭建kvm. 1. 需要检查一下 ...