2012-01-15 49 views
5

Tôi sẽ kiểm tra xem ổ cắm máy chủ được đặt trong máy chủ có đang mở hay không. Trong ứng dụng khách khi tôi tạo ổ cắm Socket sock = new Socket(host,port) Tôi kiểm tra xem nó có đang hoạt động không:kiểm tra xem ổ cắm máy chủ có đang mở ở phía bên kia không

if(sock == null) 
    System.out.println("The server is not connected!"); 
else 
    //Doing some task 

nhưng tôi không nhận được kết quả nào. có phương pháp để kiểm tra xem các ổ cắm máy chủ ở phía bên kia là mở? Tôi đã thử ngay cả phương pháp isConnected() nhưng không có gì

Trả lời

8

Nếu máy chủ không nghe, bạn sẽ nhận được kết nối bị từ chối trong một ngoại lệ. Bạn sẽ không bao giờ có được một null từ một new

10

Cách đơn giản nhất để kiểm tra reachability và liveness là tạo ra một trống Socket và sử dụng phương pháp connect() với một thời gian chờ hợp lý. Tôi đã viết một câu trả lời tương tự với một số nhỏ code snippet here.

Các vấn đề liên quan