use of com.ibm.j9ddr.vm29.j9.gc.GCVMThreadIterator in project openj9 by eclipse.
the class CheckVMThreads method check.
@Override
public void check() {
try {
GCVMThreadListIterator vmThreadListIterator = GCVMThreadListIterator.from();
while (vmThreadListIterator.hasNext()) {
J9VMThreadPointer walkThread = vmThreadListIterator.next();
GCVMThreadIterator vmthreadIterator = GCVMThreadIterator.fromJ9VMThread(walkThread);
while (vmthreadIterator.hasNext()) {
PointerPointer slot = PointerPointer.cast(vmthreadIterator.nextAddress());
if (_engine.checkSlotVMThread(slot, VoidPointer.cast(walkThread), CheckError.check_type_other, vmthreadIterator.getState()) != J9MODRON_SLOT_ITERATOR_OK) {
continue;
}
}
}
} catch (CorruptDataException e) {
// TODO: handle exception
}
}
use of com.ibm.j9ddr.vm29.j9.gc.GCVMThreadIterator in project openj9 by eclipse.
the class CheckVMThreads method print.
@Override
public void print() {
try {
GCVMThreadListIterator vmThreadListIterator = GCVMThreadListIterator.from();
ScanFormatter formatter = new ScanFormatter(this, "VMThread Slots");
while (vmThreadListIterator.hasNext()) {
J9VMThreadPointer walkThread = vmThreadListIterator.next();
formatter.section("thread", walkThread);
GCVMThreadIterator vmthreadIterator = GCVMThreadIterator.fromJ9VMThread(walkThread);
while (vmthreadIterator.hasNext()) {
formatter.entry(vmthreadIterator.next());
}
formatter.endSection();
}
formatter.end("VMThread Slots");
} catch (CorruptDataException e) {
// TODO: handle exception
}
}
Aggregations