< prev index next >

test/hotspot/jtreg/vmTestbase/nsk/jvmti/IterateOverObjectsReachableFromObject/iterobjreachobj003/iterobjreachobj003.cpp

Print this page
rev 52200 : [mq]: spaces


  23 
  24 #include <string.h>
  25 #include "jvmti.h"
  26 #include "agent_common.h"
  27 #include "jni_tools.h"
  28 #include "jvmti_tools.h"
  29 
  30 extern "C" {
  31 
  32 /* ============================================================================= */
  33 
  34 static jlong timeout = 0;
  35 static int fakeUserData = 0, objCounter = 0;
  36 static jvmtiEnv* st_jvmti = NULL;
  37 static const char* debugeeClassSignature = "Lnsk/jvmti/IterateOverObjectsReachableFromObject/iterobjreachobj003;";
  38 static const char* objectFieldName = "object";
  39 
  40 /* ============================================================================= */
  41 
  42 jvmtiIterationControl JNICALL
  43 objectReferenceCallback( jvmtiObjectReferenceKind reference_kind,
  44                          jlong  class_tag,
  45                          jlong  size,
  46                          jlong* tag_ptr,
  47                          jlong  referrer_tag,
  48                          jint   referrer_index,
  49                          void*  user_data) {
  50 
  51     const char* name = "monitorName";
  52     jrawMonitorID monitor_ptr = NULL;
  53 
  54     objCounter++;
  55 
  56     if (!NSK_JVMTI_VERIFY(st_jvmti->CreateRawMonitor(name, &monitor_ptr))) {
  57         nsk_jvmti_setFailStatus();
  58         return JVMTI_ITERATION_ABORT;
  59     }
  60 
  61     if (!NSK_JVMTI_VERIFY(st_jvmti->RawMonitorEnter(monitor_ptr))) {
  62         nsk_jvmti_setFailStatus();
  63         return JVMTI_ITERATION_ABORT;
  64     }
  65 
  66     /* Enter second time */
  67     if (!NSK_JVMTI_VERIFY(st_jvmti->RawMonitorEnter(monitor_ptr))) {
  68         nsk_jvmti_setFailStatus();
  69         return JVMTI_ITERATION_ABORT;




  23 
  24 #include <string.h>
  25 #include "jvmti.h"
  26 #include "agent_common.h"
  27 #include "jni_tools.h"
  28 #include "jvmti_tools.h"
  29 
  30 extern "C" {
  31 
  32 /* ============================================================================= */
  33 
  34 static jlong timeout = 0;
  35 static int fakeUserData = 0, objCounter = 0;
  36 static jvmtiEnv* st_jvmti = NULL;
  37 static const char* debugeeClassSignature = "Lnsk/jvmti/IterateOverObjectsReachableFromObject/iterobjreachobj003;";
  38 static const char* objectFieldName = "object";
  39 
  40 /* ============================================================================= */
  41 
  42 jvmtiIterationControl JNICALL
  43 objectReferenceCallback(jvmtiObjectReferenceKind reference_kind,
  44                         jlong  class_tag,
  45                         jlong  size,
  46                         jlong* tag_ptr,
  47                         jlong  referrer_tag,
  48                         jint   referrer_index,
  49                         void*  user_data) {
  50 
  51     const char* name = "monitorName";
  52     jrawMonitorID monitor_ptr = NULL;
  53 
  54     objCounter++;
  55 
  56     if (!NSK_JVMTI_VERIFY(st_jvmti->CreateRawMonitor(name, &monitor_ptr))) {
  57         nsk_jvmti_setFailStatus();
  58         return JVMTI_ITERATION_ABORT;
  59     }
  60 
  61     if (!NSK_JVMTI_VERIFY(st_jvmti->RawMonitorEnter(monitor_ptr))) {
  62         nsk_jvmti_setFailStatus();
  63         return JVMTI_ITERATION_ABORT;
  64     }
  65 
  66     /* Enter second time */
  67     if (!NSK_JVMTI_VERIFY(st_jvmti->RawMonitorEnter(monitor_ptr))) {
  68         nsk_jvmti_setFailStatus();
  69         return JVMTI_ITERATION_ABORT;


< prev index next >