C#编程学习之使用TcpClient / BeginConnect测试远程服务器tcp端口连接-网络教程与技术 -亦是美网络

亦是美网络

致力于操作系统应用与计算机网络技术的IT网站。

站内搜索


最新文章

推荐文章

C#编程学习之使用TcpClient / BeginConnect测试远程服务器tcp端口连接

有时候经常需要对一些服务器的端口进行tcp连接测试,通常使用“telnet IP地址 端口号”的方式即可,不能说这种方式不可取,只是使用起来比较麻烦,本着简单好用的目的,不如我们自己动手写一个测试tcp端口连接的小工具,顺便把代码和思路分享给大家,供需要的朋友借鉴。

使用C#测试tcp端口连接,我们肯定会想到TcpClient,然后使用tcpclient.Connect()方法,这种方法是可行的,但是有缺陷,是什么呢?使用tcpclient.Connect()方法,程序会等待该方法执行结束后才会继续执行下面的程序段,并且没有超时时间可设置,这样会大大影响程序执行的效率和时间。

如果我们使用tcpclient.BeginConnect()方法,执行效率就会提升很多,并且还可以设置程序超时时间,具体代码如下:

TcpClient tcp = new TcpClient();

var result = tcp.BeginConnect(IP或域名, 端口, null, null);

var sucess = result.AsyncWaitHandle.WaitOne(TimeSpan.FromSeconds(2));

if (!sucess)

{

}

else

{

}         

tcp.EndConnect(result);

具体代码就是这样了,实现过程就是获取用于等待异步操作完成的WaitHandle,阻止当前线程,直到当前实例收到信号,同时使用TimeSpan指定时间间隔。

上一篇:VR/AR游戏开发引擎Unity Pro 2018.2.6f1的下载、安装与注册激活教程
下一篇:office 2019 professional plus中文版下载+临时专用激活工具 - MicroKMS

亦是美网络,成立于2012年12月5日,是一个致力于操作系统应用与计算机网络技术的综合IT网站,为大家不断提供和推荐有用的网络教程与技术。

本站文章归<亦是美网络 www.yishimei.cn>版权所有 网站地图 联系我们 豫ICP备12013471号-4 豫公网安备41078202000395号