--- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.hpp Wed Apr 09 13:54:32 2014 +0200
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.hpp Fri Apr 11 11:00:12 2014 +0200
@@ -65,6 +65,7 @@
G1StringDedupWorkerQueue* _queues;
size_t _nqueues;
size_t _cursor;
+ bool _cancel;
volatile bool _empty;
// Statistics counter, only used for logging.
@@ -81,6 +82,9 @@
// Blocks and waits for the queue to become non-empty.
static void wait();
+ // Wakes up any thread blocked waiting for the queue to become non-empty.
+ static void cancel_wait();
+
// Pushes a deduplication candidate onto a specific GC worker queue.
static void push(uint worker_id, oop java_string);