comparison src/share/vm/gc_implementation/parallelScavenge/pcTasks.hpp @ 375:81cd571500b0

6725697: par compact - rename class ChunkData to RegionData Reviewed-by: iveresov, tonyp
author jcoomes
date Tue, 30 Sep 2008 12:20:22 -0700
parents a61af66fc99e
children ad8c8ca4ab0f
comparison
equal deleted inserted replaced
374:a4b729f5b611 375:81cd571500b0
186 186
187 virtual void do_it(GCTaskManager* manager, uint which); 187 virtual void do_it(GCTaskManager* manager, uint which);
188 }; 188 };
189 189
190 // 190 //
191 // StealChunkCompactionTask 191 // StealRegionCompactionTask
192 // 192 //
193 // This task is used to distribute work to idle threads. 193 // This task is used to distribute work to idle threads.
194 // 194 //
195 195
196 class StealChunkCompactionTask : public GCTask { 196 class StealRegionCompactionTask : public GCTask {
197 private: 197 private:
198 ParallelTaskTerminator* const _terminator; 198 ParallelTaskTerminator* const _terminator;
199 public: 199 public:
200 StealChunkCompactionTask(ParallelTaskTerminator* t); 200 StealRegionCompactionTask(ParallelTaskTerminator* t);
201 201
202 char* name() { return (char *)"steal-chunk-task"; } 202 char* name() { return (char *)"steal-region-task"; }
203 ParallelTaskTerminator* terminator() { return _terminator; } 203 ParallelTaskTerminator* terminator() { return _terminator; }
204 204
205 virtual void do_it(GCTaskManager* manager, uint which); 205 virtual void do_it(GCTaskManager* manager, uint which);
206 }; 206 };
207 207
213 // 213 //
214 214
215 class UpdateDensePrefixTask : public GCTask { 215 class UpdateDensePrefixTask : public GCTask {
216 private: 216 private:
217 PSParallelCompact::SpaceId _space_id; 217 PSParallelCompact::SpaceId _space_id;
218 size_t _chunk_index_start; 218 size_t _region_index_start;
219 size_t _chunk_index_end; 219 size_t _region_index_end;
220 220
221 public: 221 public:
222 char* name() { return (char *)"update-dense_prefix-task"; } 222 char* name() { return (char *)"update-dense_prefix-task"; }
223 223
224 UpdateDensePrefixTask(PSParallelCompact::SpaceId space_id, 224 UpdateDensePrefixTask(PSParallelCompact::SpaceId space_id,
225 size_t chunk_index_start, 225 size_t region_index_start,
226 size_t chunk_index_end); 226 size_t region_index_end);
227 227
228 virtual void do_it(GCTaskManager* manager, uint which); 228 virtual void do_it(GCTaskManager* manager, uint which);
229 }; 229 };
230 230
231 // 231 //
232 // DrainStacksCompactionTask 232 // DrainStacksCompactionTask
233 // 233 //
234 // This task processes chunks that have been added to the stacks of each 234 // This task processes regions that have been added to the stacks of each
235 // compaction manager. 235 // compaction manager.
236 // 236 //
237 // Trying to use one draining thread does not work because there are no 237 // Trying to use one draining thread does not work because there are no
238 // guarantees about which task will be picked up by which thread. For example, 238 // guarantees about which task will be picked up by which thread. For example,
239 // if thread A gets all the preloaded chunks, thread A may not get a draining 239 // if thread A gets all the preloaded regions, thread A may not get a draining
240 // task (they may all be done by other threads). 240 // task (they may all be done by other threads).
241 // 241 //
242 242
243 class DrainStacksCompactionTask : public GCTask { 243 class DrainStacksCompactionTask : public GCTask {
244 public: 244 public:
245 char* name() { return (char *)"drain-chunk-task"; } 245 char* name() { return (char *)"drain-region-task"; }
246 virtual void do_it(GCTaskManager* manager, uint which); 246 virtual void do_it(GCTaskManager* manager, uint which);
247 }; 247 };