• c#检测端口是否被占用的简单实例


    c#检测端口是否被占用的简单实例。

    当我们要创建一个Tcp/Ip Server connection ,我们需要一个范围在1000到65535之间的端口 。

    但是本机一个端口只能一个程序监听,所以我们进行本地监听的时候需要检测端口是否被占用。

    命名空间System.Net.NetworkInformation下定义了一个名为IPGlobalProperties的类,我们使用这个类可以获取所有的监听连接,然后判断端口是否被占用,代码如下:

    复制代码代码如下:
    public static bool PortInUse(int port)
    {
        bool inUse = false;

        IPGlobalProperties ipProperties = IPGlobalProperties.GetIPGlobalProperties();
        IPEndPoint[] ipEndPoints = ipProperties.GetActiveTcpListeners();

        foreach (IPEndPoint endPoint in ipEndPoints)
        { // www.jbxue.com
            if (endPoint.Port == port)
            {
                inUse = true;
                break;
            }
        }

        return inUse;
    }

    使用HttpListner类在8080端口启动一个监听,然后测试是否可以被检测出来,代码如下:

    复制代码代码如下:

    static void Main(string[] args)
    {
        HttpListener httpListner = new HttpListener();
        httpListner.Prefixes.Add("http://*:8080/");
        httpListner.Start(); // www.jbxue.com

        Console.WriteLine("Port: 8080 status: " + (PortInUse(8080) ? "in use" : "not in use"));

        Console.ReadKey();

        httpListner.Close();
    }

  • 相关阅读:
    Servlet 易错点和注意点
    Spring 完成自动注入(autowire)
    Java 定时调度Timer&Quartz
    常用Linux命令杂记
    Spring 使用AOP——基于注解配置
    Spring 使用AOP——xml配置
    Spring 使用纯注解方式完成IoC
    Spring 简单使用IoC与DI——XML配置
    让多个HTML页面 使用 同一段HTML代码
    Feture、ListenableFuture、ComplatableFuture
  • 原文地址:https://www.cnblogs.com/linuxnotes/p/3462423.html
Copyright © 2020-2023  润新知