c# 포트 사용 여부를 체크하는 간단한 인스턴스
그러나 이 컴퓨터는 한 포트에 한 프로그램만 감청할 수 있기 때문에 로컬 감청을 할 때 포트가 점용되었는지 검사해야 한다.
네임스페이스 시스템.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)
{
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();
Console.WriteLine("Port: 8080 status: " + (PortInUse(8080) ? "in use" : "not in use"));
Console.ReadKey();
httpListner.Close();
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.