537 NOT_PRODUCT(_num_par_pushes = 0;) |
537 NOT_PRODUCT(_num_par_pushes = 0;) |
538 _task_queues = new ObjToScanQueueSet(ParallelGCThreads); |
538 _task_queues = new ObjToScanQueueSet(ParallelGCThreads); |
539 guarantee(_task_queues != NULL, "task_queues allocation failure."); |
539 guarantee(_task_queues != NULL, "task_queues allocation failure."); |
540 |
540 |
541 for (uint i1 = 0; i1 < ParallelGCThreads; i1++) { |
541 for (uint i1 = 0; i1 < ParallelGCThreads; i1++) { |
542 ObjToScanQueuePadded *q_padded = new ObjToScanQueuePadded(); |
542 ObjToScanQueue *q = new ObjToScanQueue(); |
543 guarantee(q_padded != NULL, "work_queue Allocation failure."); |
543 guarantee(q != NULL, "work_queue Allocation failure."); |
544 |
544 _task_queues->register_queue(i1, q); |
545 _task_queues->register_queue(i1, &q_padded->work_queue); |
|
546 } |
545 } |
547 |
546 |
548 for (uint i2 = 0; i2 < ParallelGCThreads; i2++) |
547 for (uint i2 = 0; i2 < ParallelGCThreads; i2++) |
549 _task_queues->queue(i2)->initialize(); |
548 _task_queues->queue(i2)->initialize(); |
550 |
549 |