From 2b2f8db5d2555ce359f0b47c1680590cf37b9f9e Mon Sep 17 00:00:00 2001 From: Trustin Lee Date: Sun, 7 Jul 2013 12:37:36 +0900 Subject: [PATCH] Use ThreadLocalRandom where possible --- .../codec/http/multipart/HttpPostRequestEncoder.java | 5 ++--- .../src/test/java/io/netty/test/udt/util/UnitHelp.java | 3 ++- .../src/main/java/io/netty/channel/AbstractChannel.java | 6 ++---- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java index f5269f7edd..82d64a4c85 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java @@ -29,6 +29,7 @@ import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.HttpVersion; import io.netty.handler.codec.http.LastHttpContent; import io.netty.handler.stream.ChunkedMessageInput; +import io.netty.util.internal.ThreadLocalRandom; import java.io.File; import java.io.IOException; @@ -40,7 +41,6 @@ import java.util.HashMap; import java.util.List; import java.util.ListIterator; import java.util.Map; -import java.util.Random; import java.util.regex.Pattern; import static io.netty.buffer.Unpooled.*; @@ -265,8 +265,7 @@ public class HttpPostRequestEncoder implements ChunkedMessageInput */ private static String getNewMultipartDelimiter() { // construct a generated delimiter - Random random = new Random(); - return Long.toHexString(random.nextLong()).toLowerCase(); + return Long.toHexString(ThreadLocalRandom.current().nextLong()).toLowerCase(); } /** diff --git a/transport-udt/src/test/java/io/netty/test/udt/util/UnitHelp.java b/transport-udt/src/test/java/io/netty/test/udt/util/UnitHelp.java index 8447748ca2..7717168d3f 100644 --- a/transport-udt/src/test/java/io/netty/test/udt/util/UnitHelp.java +++ b/transport-udt/src/test/java/io/netty/test/udt/util/UnitHelp.java @@ -18,6 +18,7 @@ package io.netty.test.udt.util; import com.barchart.udt.SocketUDT; import com.barchart.udt.StatusUDT; +import io.netty.util.internal.ThreadLocalRandom; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -222,7 +223,7 @@ public final class UnitHelp { public static int[] randomIntArray(final int length, final int range) { final int[] array = new int[length]; - final Random generator = new Random(0); + final Random generator = ThreadLocalRandom.current(); for (int i = 0; i < array.length; i++) { array[i] = generator.nextInt(range); } diff --git a/transport/src/main/java/io/netty/channel/AbstractChannel.java b/transport/src/main/java/io/netty/channel/AbstractChannel.java index b8be06bec3..f2db24892d 100644 --- a/transport/src/main/java/io/netty/channel/AbstractChannel.java +++ b/transport/src/main/java/io/netty/channel/AbstractChannel.java @@ -21,6 +21,7 @@ import io.netty.buffer.ByteBufHolder; import io.netty.util.DefaultAttributeMap; import io.netty.util.ReferenceCountUtil; import io.netty.util.internal.PlatformDependent; +import io.netty.util.internal.ThreadLocalRandom; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -30,7 +31,6 @@ import java.net.InetSocketAddress; import java.net.SocketAddress; import java.nio.channels.ClosedChannelException; import java.nio.channels.NotYetConnectedException; -import java.util.Random; import java.util.concurrent.ConcurrentMap; /** @@ -42,15 +42,13 @@ public abstract class AbstractChannel extends DefaultAttributeMap implements Cha static final ConcurrentMap allChannels = PlatformDependent.newConcurrentHashMap(); - private static final Random random = new Random(); - /** * Generates a negative unique integer ID. This method generates only * negative integers to avoid conflicts with user-specified IDs where only * non-negative integers are allowed. */ private static Integer allocateId(Channel channel) { - int idVal = random.nextInt(); + int idVal = ThreadLocalRandom.current().nextInt(); if (idVal > 0) { idVal = -idVal; } else if (idVal == 0) {