netty5/buffer/src/main/java/io/netty/buffer
Norman Maurer 7d4c077492 Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe
Motivation:

sun.misc.Unsafe allows us to handle heap ByteBuf in a more efficient matter. We should use special ByteBuf implementation when sun.misc.Unsafe can be used to increase performance.

Modifications:

- Add PooledUnsafeHeapByteBuf and UnpooledUnsafeHeapByteBuf that are used when sun.misc.Unsafe is ready to use.
- Add UnsafeHeapSwappedByteBuf

Result:

Better performance when using heap buffers and sun.misc.Unsafe is ready to use.
2015-10-21 09:04:13 +02:00
..
AbstractByteBuf.java Minimize reference count checks in SlicedByteBuf 2015-10-16 21:09:03 +02:00
AbstractByteBufAllocator.java maxBytesPerRead channel configuration 2015-08-05 23:59:54 -07:00
AbstractDerivedByteBuf.java Revert "Add PooledSlicedByteBuf and PooledDuplicatedByteBuf" 2015-08-26 13:24:44 -07:00
AbstractReferenceCountedByteBuf.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
AbstractUnsafeSwappedByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
AdvancedLeakAwareByteBuf.java Added debug logging with effective value for io.netty.leakDetection.acquireAndReleaseOnly property 2015-09-01 09:10:38 +02:00
ByteBuf.java [#3899] Fix javadoc to use netty 4 API. 2015-07-03 14:18:53 +02:00
ByteBufAllocator.java MessageToByteEncoder always starts with ByteBuf that use initalCapacity == 0 2014-06-24 13:55:21 +09:00
ByteBufHolder.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
ByteBufInputStream.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
ByteBufOutputStream.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
ByteBufProcessor.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
ByteBufUtil.java Minimize object allocation when calling AbstractByteBuf.toString(..., Charset) 2015-10-15 17:51:57 +02:00
CompositeByteBuf.java [#3623] CompositeByteBuf.iterator() should return optimized Iterable 2015-04-20 10:45:37 +02:00
DefaultByteBufHolder.java [#4327] Ensure toString() will not throw IllegalReferenceCountException 2015-10-10 20:12:43 +02:00
DuplicatedAbstractByteBuf.java Added DuplicatedAbstractByteBuf that can provide fast-path for _get* and _set* methods 2015-10-16 08:56:35 +02:00
DuplicatedByteBuf.java Added DuplicatedAbstractByteBuf that can provide fast-path for _get* and _set* methods 2015-10-16 08:56:35 +02:00
EmptyByteBuf.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
FixedCompositeByteBuf.java Fix FixedCompositeByteBuf handling when copying to direct buffers and streams 2015-06-27 20:39:31 +02:00
package-info.java Synchronized between 4.1 and master 2014-04-25 00:38:02 +09:00
PoolArena.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
PoolArenaMetric.java Expose metrics for PooledByteBufAllocator 2015-05-20 21:06:17 +02:00
PoolChunk.java Let PoolThreadCache work even if allocation and deallocation Thread are different 2015-05-27 14:38:11 +02:00
PoolChunkList.java [#3654] No need to hold lock while destroy a chunk 2015-05-27 09:47:53 +02:00
PoolChunkListMetric.java Expose metrics for PooledByteBufAllocator 2015-05-20 21:06:17 +02:00
PoolChunkMetric.java Expose metrics for PooledByteBufAllocator 2015-05-20 21:06:17 +02:00
PooledByteBuf.java [#3789] Correctly reset markers for all allocations when using PooledByteBufAllocator 2015-09-25 19:57:33 +02:00
PooledByteBufAllocator.java [#3888] Use 2 * cores as default minimum for pool arenas. 2015-06-18 07:27:30 +02:00
PooledDirectByteBuf.java [#3789] Correctly reset markers for all allocations when using PooledByteBufAllocator 2015-09-25 19:57:33 +02:00
PooledHeapByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
PooledUnsafeDirectByteBuf.java Correctly handle byte shifting if system does not support unaligned access. 2015-10-20 17:32:13 +02:00
PooledUnsafeHeapByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
PoolSubpage.java [#3654] Synchronize on PoolSubpage head when allocate / free PoolSubpages 2015-05-27 10:33:12 +02:00
PoolSubpageMetric.java Expose metrics for PooledByteBufAllocator 2015-05-20 21:06:17 +02:00
PoolThreadCache.java MemoryRegionCache$Entry objects are not recycled 2015-08-10 21:29:25 +02:00
ReadOnlyByteBuf.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
ReadOnlyByteBufferBuf.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
ReadOnlyUnsafeDirectByteBuf.java Correctly handle byte shifting if system does not support unaligned access. 2015-10-20 17:32:13 +02:00
SimpleLeakAwareByteBuf.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
SlicedAbstractByteBuf.java Added SlicedAbstractByteBuf that can provide fast-path for _get* and _set* methods 2015-10-16 09:12:20 +02:00
SlicedByteBuf.java Minimize reference count checks in SlicedByteBuf 2015-10-16 21:09:03 +02:00
SwappedByteBuf.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
Unpooled.java [#3896] Unpooled.copiedBuffer(ByteBuffer) and copiedBuffer(ByteBuffer...) is not thread-safe. 2015-07-07 08:38:37 +02:00
UnpooledByteBufAllocator.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
UnpooledDirectByteBuf.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
UnpooledHeapByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
UnpooledUnsafeDirectByteBuf.java Correctly handle byte shifting if system does not support unaligned access. 2015-10-20 17:32:13 +02:00
UnpooledUnsafeHeapByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
UnreleasableByteBuf.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
UnsafeByteBufUtil.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
UnsafeDirectSwappedByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
UnsafeHeapSwappedByteBuf.java Add *UnsafeHeapByteBuf for improve performance on systems with sun.misc.Unsafe 2015-10-21 09:04:13 +02:00
WrappedByteBuf.java [#4313] ByteBufUtil.writeUtf8 should use fast-path for WrappedByteBuf 2015-10-13 12:00:37 +02:00