diff options
| author | Chris Lu <chris.lu@gmail.com> | 2020-07-15 23:33:31 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2020-07-15 23:33:31 -0700 |
| commit | 7bca72deedb872402b4e597976eb198f3dad2d74 (patch) | |
| tree | ec8246e075538b1cae71f997a761f84a6d511c86 /other/java/client/src | |
| parent | 2286d27730ba0fd38654130ae8bb02181e3b45fb (diff) | |
| download | seaweedfs-7bca72deedb872402b4e597976eb198f3dad2d74.tar.xz seaweedfs-7bca72deedb872402b4e597976eb198f3dad2d74.zip | |
reuse bytebuffer
Diffstat (limited to 'other/java/client/src')
| -rw-r--r-- | other/java/client/src/main/java/seaweedfs/client/ByteBufferPool.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/other/java/client/src/main/java/seaweedfs/client/ByteBufferPool.java b/other/java/client/src/main/java/seaweedfs/client/ByteBufferPool.java new file mode 100644 index 000000000..897fe9694 --- /dev/null +++ b/other/java/client/src/main/java/seaweedfs/client/ByteBufferPool.java @@ -0,0 +1,22 @@ +package seaweedfs.client; + +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.List; + +public class ByteBufferPool { + + static List<ByteBuffer> bufferList = new ArrayList<>(); + + public static synchronized ByteBuffer request(int bufferSize) { + if (bufferList.isEmpty()) { + return ByteBuffer.allocate(bufferSize); + } + return bufferList.remove(bufferList.size()-1); + } + + public static synchronized void release(ByteBuffer obj) { + bufferList.add(obj); + } + +} |
