aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/compiler/java/java_message.cc
diff options
context:
space:
mode:
authorGravatar kenton@google.com <kenton@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2009-08-07 21:19:29 +0000
committerGravatar kenton@google.com <kenton@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2009-08-07 21:19:29 +0000
commit7ddfb4c3c7ccce125a4060a0b7049c626b28064b (patch)
tree87ae627e5071b03479eda30fc3757b6328d76dc0 /src/google/protobuf/compiler/java/java_message.cc
parent68996fc874300337ec7349f50d0b1cbb3a6f1bec (diff)
Remove semi-broken Java thread-local builder freelist 'optimization'. Maybe bring back later in optional form.
Diffstat (limited to 'src/google/protobuf/compiler/java/java_message.cc')
-rw-r--r--src/google/protobuf/compiler/java/java_message.cc15
1 files changed, 1 insertions, 14 deletions
diff --git a/src/google/protobuf/compiler/java/java_message.cc b/src/google/protobuf/compiler/java/java_message.cc
index 1f783bb2..332a118f 100644
--- a/src/google/protobuf/compiler/java/java_message.cc
+++ b/src/google/protobuf/compiler/java/java_message.cc
@@ -601,15 +601,6 @@ void MessageGenerator::GenerateBuilder(io::Printer* printer) {
}
printer->Indent();
- // By using a threadlocal queue, we do not have to worry about locking when
- // accessing the queue. Current JDKs implement this very efficiently, using
- // no locks themselves to acquire the value when needed.
- printer->Print(
- "private static final "
- " com.google.protobuf.Internal.ThreadLocalQuickQueue<Builder> builders =\n"
- " new com.google.protobuf.Internal.ThreadLocalQuickQueue<Builder>();\n"
- "\n");
-
GenerateCommonBuilderMethods(printer);
if (HasGeneratedMethods(descriptor_)) {
@@ -637,10 +628,7 @@ void MessageGenerator::GenerateCommonBuilderMethods(io::Printer* printer) {
"private Builder() {}\n"
"\n"
"private static Builder create() {\n"
- " Builder builder = builders.get().poll();\n"
- " if (builder == null) {\n"
- " builder = new Builder();\n"
- " }\n"
+ " Builder builder = new Builder();\n"
" builder.result = new $classname$();\n"
" return builder;\n"
"}\n"
@@ -718,7 +706,6 @@ void MessageGenerator::GenerateCommonBuilderMethods(io::Printer* printer) {
printer->Print(
" $classname$ returnMe = result;\n"
" result = null;\n"
- " builders.get().offer(this);\n"
" return returnMe;\n"
"}\n"
"\n",