十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
直接上代码:
创新互联公司主营武强网站建设的网络公司,主营网站建设方案,APP应用开发,武强h5微信小程序定制开发搭建,武强网站营销推广欢迎武强等地区企业咨询
import java.net.Socket;
import java.text.SimpleDateFormat;
import java.util.Date;
public class PortScanner extends Thread {
private int[] p;
Socket ss = null;
public PortScanner(int[] p) {
this.p = p;
}
public static void main(String[] args) {
for (int i = 0; i 65535; i = i + 100) {
new PortScanner(new int[] { i + 1, i + 100 }).start();
}
}
@Override
public void run() {
for (int i = p[0]; i p[1]; i++) {
try {
ss = new Socket("8.8.8.8", i);
System.out.println("扫描到端口: " + i);
} catch (Exception e) {
// System.out.println("关闭端口: " + i);
}
}
}
}
此方法实现Closeable
这个是官方的api
closepublic void close()
throws IOException关闭此输入流并释放与此流关联的所有系统资源。此方法只执行 in.close()。
指定者:接口 Closeable 中的 close覆盖:类 InputStream 中的 close抛出:IOException - 如果发生 I/O 错误。
另请参见:in
关闭端口
使用完的端口,必须记得将其关闭,否则其它的程序将无法使用该端口,CommPortIdentifier类只提供了开启端口的方法,而要关闭端口,则要调用CommPort类的close()方法。
serialPort.close()
dis.close();
还有你这个死循环太耗费性能,建议你可以定义一个标记flag
=
ture;不想用的时候,在动作结束了可以让flag
=
false;