Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1341)

Unified Diff: runtime/vm/isolate.cc

Issue 503363005: - Add and enable concurrent sweeper. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/isolate.cc
===================================================================
--- runtime/vm/isolate.cc (revision 39573)
+++ runtime/vm/isolate.cc (working copy)
@@ -444,10 +444,65 @@
set_vm_tag(VMTag::kIdleTagId);
set_user_tag(UserTags::kDefaultUserTag);
}
+
+Isolate::Isolate(Isolate* original)
+ : store_buffer_(true),
+ class_table_(original->class_table()),
+ message_notify_callback_(NULL),
+ name_(NULL),
+ start_time_(OS::GetCurrentTimeMicros()),
+ main_port_(0),
+ pause_capability_(0),
+ terminate_capability_(0),
+ heap_(NULL),
+ object_store_(NULL),
+ top_context_(Context::null()),
+ top_exit_frame_info_(0),
+ init_callback_data_(NULL),
+ environment_callback_(NULL),
+ library_tag_handler_(NULL),
+ api_state_(NULL),
+ stub_code_(NULL),
+ debugger_(NULL),
+ single_step_(false),
+ resume_request_(false),
+ random_(),
+ simulator_(NULL),
+ long_jump_base_(NULL),
+ timer_list_(),
+ deopt_id_(0),
+ mutex_(new Mutex()),
+ stack_limit_(0),
+ saved_stack_limit_(0),
+ stack_overflow_flags_(0),
+ stack_overflow_count_(0),
+ message_handler_(NULL),
+ spawn_state_(NULL),
+ is_runnable_(false),
+ gc_prologue_callback_(NULL),
+ gc_epilogue_callback_(NULL),
+ defer_finalization_count_(0),
+ deopt_context_(NULL),
+ stacktrace_(NULL),
+ stack_frame_index_(-1),
+ last_allocationprofile_accumulator_reset_timestamp_(0),
+ last_allocationprofile_gc_timestamp_(0),
+ cha_(NULL),
+ object_id_ring_(NULL),
+ trace_buffer_(NULL),
+ profiler_data_(NULL),
+ thread_state_(NULL),
+ tag_table_(GrowableObjectArray::null()),
+ current_tag_(UserTag::null()),
+ metrics_list_head_(NULL),
+ next_(NULL),
+ REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_INITIALIZERS)
+ REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_INIT)
+ reusable_handles_() {
+}
#undef REUSABLE_HANDLE_SCOPE_INIT
#undef REUSABLE_HANDLE_INITIALIZERS
-
Isolate::~Isolate() {
delete [] name_;
delete heap_;
@@ -984,6 +1039,11 @@
}
+Isolate* Isolate::ShallowCopy() {
+ return new Isolate(this);
+}
+
+
Dart_IsolateCreateCallback Isolate::create_callback_ = NULL;
Dart_IsolateInterruptCallback Isolate::interrupt_callback_ = NULL;
Dart_IsolateUnhandledExceptionCallback
« runtime/vm/heap.cc ('K') | « runtime/vm/isolate.h ('k') | runtime/vm/metrics.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698