0

我正在尝试创建一个多线程应用程序,该应用程序将尝试使用 C# 中的套接字将大量数据发送到特定的 IP 和端口。我已经完成了这项工作,但我需要帮助才能从中获取更多信息。

我想知道如何获得每秒发送多少数据?如果可能,以 MB 为单位,来自所有线程和所有请求?

我只是出于教育目的这样做,以了解实际可以发送多少数据以及在使用多线程时它是如何工作的

这是我的代码:

static void Main(string[] args)
{
    int amountOfThreads = 10;

    while (amountOfThreads > 0)
    {
        Thread thread = new Thread(SendData);
        thread.Start();
    }
}

private static void SendData()
{
    byte[] dataToSend = Encoding.Default.GetBytes("some string that'll be sent many times.");

    string ipAddress = "127.0.0.1";
    int port = 3924;

    IPEndPoint ep = new IPEndPoint(IPAddress.Parse(ipAddress), port);

    Socket socketToSendTo = new Socket(System.Net.Sockets.AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
    socketToSendTo.SendTo(dataToSend, ep);
}
4

0 回答 0