summaryrefslogtreecommitdiffstats
path: root/runtime/intern_table.h
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2013-09-20 14:02:02 -0700
committerMathieu Chartier <mathieuc@google.com>2013-09-20 14:02:02 -0700
commit810b1d704f2db0d935bf5dddae3545f79cabd435 (patch)
treebaf1ec61b47031244cb1fe2458b136c9f9d54f1f /runtime/intern_table.h
parent5c00e28cdc7da675451869a2e5baa8f1c3244892 (diff)
parentbb0140e051e62ca0b51b0870c2386ae3110b0556 (diff)
downloadart-810b1d704f2db0d935bf5dddae3545f79cabd435.tar.gz
art-810b1d704f2db0d935bf5dddae3545f79cabd435.tar.bz2
art-810b1d704f2db0d935bf5dddae3545f79cabd435.zip
resolved conflicts for merge of bb0140e0 to dalvik-dev
Change-Id: I31e0c05c5e917cf3275296a7f65bd8b78ec9b78b
Diffstat (limited to 'runtime/intern_table.h')
-rw-r--r--runtime/intern_table.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/intern_table.h b/runtime/intern_table.h
index 9806130102..eec63c874f 100644
--- a/runtime/intern_table.h
+++ b/runtime/intern_table.h
@@ -65,6 +65,9 @@ class InternTable {
void DumpForSigQuit(std::ostream& os) const;
+ void DisallowNewInterns() EXCLUSIVE_LOCKS_REQUIRED(Locks::mutator_lock_);
+ void AllowNewInterns() SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
+
private:
typedef std::multimap<int32_t, mirror::String*> Table;
@@ -78,6 +81,8 @@ class InternTable {
mutable Mutex intern_table_lock_;
bool is_dirty_ GUARDED_BY(intern_table_lock_);
+ bool allow_new_interns_ GUARDED_BY(intern_table_lock_);
+ ConditionVariable new_intern_condition_ GUARDED_BY(intern_table_lock_);
Table strong_interns_ GUARDED_BY(intern_table_lock_);
Table weak_interns_ GUARDED_BY(intern_table_lock_);
};