16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/stringTable.hpp"
27 #include "gc/shared/stringdedup/stringDedup.hpp"
28 #include "gc/shared/stringdedup/stringDedupQueue.hpp"
29 #include "gc/shared/stringdedup/stringDedupQueue.inline.hpp"
30 #include "gc/shared/stringdedup/stringDedupTable.hpp"
31 #include "gc/shared/stringdedup/stringDedupThread.hpp"
32 #include "gc/shared/suspendibleThreadSet.hpp"
33 #include "logging/log.hpp"
34 #include "oops/access.inline.hpp"
35 #include "oops/oop.inline.hpp"
36 #include "runtime/atomic.hpp"
37
38 StringDedupThread* StringDedupThread::_thread = NULL;
39
40 StringDedupThread::StringDedupThread() :
41 ConcurrentGCThread() {
42 set_name("StrDedup");
43 create_and_start();
44 }
45
46 StringDedupThread::~StringDedupThread() {
47 ShouldNotReachHere();
48 }
49
50 StringDedupThread* StringDedupThread::thread() {
51 assert(_thread != NULL, "String deduplication thread not created");
52 return _thread;
53 }
54
55 class StringDedupSharedClosure: public OopClosure {
56 private:
|
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/stringTable.hpp"
27 #include "gc/shared/stringdedup/stringDedup.hpp"
28 #include "gc/shared/stringdedup/stringDedupQueue.hpp"
29 #include "gc/shared/stringdedup/stringDedupQueue.inline.hpp"
30 #include "gc/shared/stringdedup/stringDedupTable.hpp"
31 #include "gc/shared/stringdedup/stringDedupThread.hpp"
32 #include "gc/shared/suspendibleThreadSet.hpp"
33 #include "logging/log.hpp"
34 #include "oops/access.inline.hpp"
35 #include "oops/oop.inline.hpp"
36
37 StringDedupThread* StringDedupThread::_thread = NULL;
38
39 StringDedupThread::StringDedupThread() :
40 ConcurrentGCThread() {
41 set_name("StrDedup");
42 create_and_start();
43 }
44
45 StringDedupThread::~StringDedupThread() {
46 ShouldNotReachHere();
47 }
48
49 StringDedupThread* StringDedupThread::thread() {
50 assert(_thread != NULL, "String deduplication thread not created");
51 return _thread;
52 }
53
54 class StringDedupSharedClosure: public OopClosure {
55 private:
|