### 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
return is;
        }
        return new InputStream() {
            byte[] mMarkBuffer;
            boolean mInMarked = false;
            boolean mInReset = false;
            boolean mDry = false;
            private int mPosition = 0;
            private int mCount = 0;
            @Override
            public int read() throws IOException {
                if (!mInMarked) {
                    return is.read();
                } else {
                    if (mPosition < mCount) {
                        byte b = mMarkBuffer[mPosition++];
                        return b & 0xFF;
                    }
                    if (!mInReset) {
                        if (mDry) return -1;
                        if (null == mMarkBuffer) {
                            mMarkBuffer = new byte[markBufferSize];
                        }
                        if (mPosition >= markBufferSize) {
                            throw new IOException("Mark buffer is full!");
                        }
                        int read = is.read();
                        if (-1 == read) {
                            mDry = true;
                            return -1;