Hello Sherman!

On 15.05.2013 20:34, Xueming Shen wrote:
public long skip(long n) throws IOException {
-        byte[] buf = new byte[512];
+        if (tmpbuf == null) {
+            tmpbuf = new byte[512];
+        }
         long total = 0;
         while (total < n) {
             long len = n - total;
- len = read(buf, 0, len < buf.length ? (int)len : buf.length); + len = read(buf, 0, len < tmpbuf.length ? (int)len : tmpbuf.length);
             if (len == -1) {
                 return total;
             }
             total += len;
         }

Shouldn't the first param "buf" to be "tmpbuf" as well at ln#104, otherwise I guess
it will not pass the compiler?

Of course you're right!
I should have waited for the compilation to finish before posting the message. Here's the updated webrev: http://cr.openjdk.java.net/~dmeetry/8014657/webrev.1/ <http://cr.openjdk.java.net/%7Edmeetry/8014657/webrev.1/>

Thanks,
Ivan


-Sherman

On 05/15/2013 08:40 AM, Ivan Gerasimov wrote:
Hello!

Please have a chance to review a simple change proposal.

CheckedInputStream.skip() allocates temporary buffer on every call.
It's suggested to have a temporary buffer that is initialized on the first use and can be reused during subsequent calls to the skip() function.
Many other input streams already use the same approach.

http://cr.openjdk.java.net/~dmeetry/8014657/webrev.0/ <http://cr.openjdk.java.net/%7Edmeetry/8014657/webrev.0/>

Sincerely,
Ivan




Reply via email to