Menentukan Ketersediaan Port dalam Java
Apabila bekerja dengan aplikasi rangkaian, menentukan ketersediaan port tertentu adalah penting untuk mengelakkan konflik dan memastikan yang betul komunikasi. Di Java, terdapat beberapa kaedah untuk menyemak ketersediaan port secara pemrograman:
Projek Apache Camel menyediakan pelaksanaan yang cekap:
<code class="java">public static boolean available(int port) { if (port < MIN_PORT_NUMBER || port > MAX_PORT_NUMBER) { throw new IllegalArgumentException("Invalid start port: " + port); } ServerSocket ss = null; DatagramSocket ds = null; try { ss = new ServerSocket(port); ss.setReuseAddress(true); ds = new DatagramSocket(port); ds.setReuseAddress(true); return true; } catch (IOException e) { } finally { if (ds != null) { ds.close(); } if (ss != null) { try { ss.close(); } catch (IOException e) { /* should not be thrown */ } } } return false; }</code>
Kaedah ini mengesahkan ketersediaan port untuk kedua-dua sambungan TCP dan UDP dengan mencipta dan menguji ServerSocket dan DatagramSocket menggunakan nombor port yang disediakan. Jika instantiasi berjaya, pelabuhan dianggap tersedia; jika tidak, ia tidak tersedia.
Atas ialah kandungan terperinci Bagaimana untuk menyemak Ketersediaan Port di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!