devxlogo

Reducing Unbuffered Streams

Reducing Unbuffered Streams

InputStream in = new FileInputStream(file);int q;while ((q = in.read()) != -1) {     ...}

The code above reads a file byte by byte. Every read() method call on the stream causes a native call to native implementation of the filesystem. Depending on the implementation this may cause a syscall to the operating system. The number of native calls can be reduced significantly by wrapping the stream into a BufferedInputStream:

InputStream in = new BufferedInputStream(new FileInputStream(file));
devxblackblue

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.

About Our Journalist