devxlogo

Nonblocking I/O

Question:
Say I have 10 sockets and I want to have a thread which checks for a message from the sockets using their InputStreams. The thread will wait in the first socket until it receives a messagein that socket. How can I skip to the next socket when there is no message in the current socket?

Answer:
There is no analog to select() in Java, nor is there true nonblockingI/O. The proper way to check if an InputStream has any data available for reading is to call its available() method and see if it returns apositive value. The proper way to check if a Reader has any data available for reading is to call its ready() method and see if itreturns true.

Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.

See also  How Seasoned Architects Evaluate New Tech

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.