### Environment

* Dubbo version: master branch latest
* Operating System version: all
* Java version: 1.8

### Step to reproduce this issue
1. start StreamUtils UT
2. using `lsof test-class/StreamUtilsTest.txt` to check opened file handle

### Expected Result
after running all the UT, there shouldn't be any opened handles left

### Actual Result
several file handles left

### How to fix
- `overwrite` the `close` method of `InputStream` constructed in `limitedInputStream` and `markSupportedInputStream`
- `close` the InputStream in corresponding UT
@Override
            public synchronized void reset() throws IOException {
                if (!mInMarked) {
                    throw new IOException("should mark befor reset!");
                }
                mInReset = true;
                mPosition = 0;
            }
            @Override
            public boolean markSupported() {
                return true;
            }
            @Override
            public int available() throws IOException {
                int available = is.available();
                if (mInMarked && mInReset) available += mCount - mPosition;
                return available;
            }
        };
    }
    public static InputStream markSupportedInputStream(final InputStream is) {
        return markSupportedInputStream(is, 1024);
    }
    public static void skipUnusedStream(InputStream is) throws IOException {
        if (is.available() > 0) {
            is.skip(is.available());
        }
    }
}