| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_HEAP_INCREMENTAL_MARKING_H_ | 5 #ifndef V8_HEAP_INCREMENTAL_MARKING_H_ |
| 6 #define V8_HEAP_INCREMENTAL_MARKING_H_ | 6 #define V8_HEAP_INCREMENTAL_MARKING_H_ |
| 7 | 7 |
| 8 #include "src/cancelable-task.h" | 8 #include "src/cancelable-task.h" |
| 9 #include "src/execution.h" | 9 #include "src/execution.h" |
| 10 #include "src/heap/heap.h" | 10 #include "src/heap/heap.h" |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 | 98 |
| 99 void Stop(); | 99 void Stop(); |
| 100 | 100 |
| 101 void FinalizeMarking(CompletionAction action); | 101 void FinalizeMarking(CompletionAction action); |
| 102 | 102 |
| 103 void MarkingComplete(CompletionAction action); | 103 void MarkingComplete(CompletionAction action); |
| 104 | 104 |
| 105 void Epilogue(); | 105 void Epilogue(); |
| 106 | 106 |
| 107 // Performs incremental marking steps of step_size_in_bytes as long as | 107 // Performs incremental marking steps of step_size_in_bytes as long as |
| 108 // deadline_ins_ms is not reached. step_size_in_bytes can be 0 to compute | 108 // deadline_in_ms is not reached. step_size_in_bytes can be 0 to compute |
| 109 // an estimate increment. Returns the remaining time that cannot be used | 109 // an estimate increment. Returns the remaining time that cannot be used |
| 110 // for incremental marking anymore because a single step would exceed the | 110 // for incremental marking anymore because a single step would exceed the |
| 111 // deadline. | 111 // deadline. |
| 112 double AdvanceIncrementalMarking(intptr_t step_size_in_bytes, | 112 double AdvanceIncrementalMarking(intptr_t step_size_in_bytes, |
| 113 double deadline_in_ms, | 113 double deadline_in_ms, |
| 114 StepActions step_actions); | 114 StepActions step_actions); |
| 115 | 115 |
| 116 // It's hard to know how much work the incremental marker should do to make | 116 // It's hard to know how much work the incremental marker should do to make |
| 117 // progress in the face of the mutator creating new work for it. We start | 117 // progress in the face of the mutator creating new work for it. We start |
| 118 // of at a moderate rate of work and gradually increase the speed of the | 118 // of at a moderate rate of work and gradually increase the speed of the |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 299 GCRequestType request_type_; | 299 GCRequestType request_type_; |
| 300 | 300 |
| 301 IncrementalMarkingJob incremental_marking_job_; | 301 IncrementalMarkingJob incremental_marking_job_; |
| 302 | 302 |
| 303 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); | 303 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); |
| 304 }; | 304 }; |
| 305 } // namespace internal | 305 } // namespace internal |
| 306 } // namespace v8 | 306 } // namespace v8 |
| 307 | 307 |
| 308 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ | 308 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ |
| OLD | NEW |