harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gregory Shimansky (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-3894) [drlvm][jvmti] JVMTI function GetThreadGroupChildren() return no more than 10 child threds and groups
Date Wed, 23 May 2007 15:45:16 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-3894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12498276
] 

Gregory Shimansky commented on HARMONY-3894:
--------------------------------------------

Hello Eugene. Could you please fix the warning in j.l.ThreadGroup compilation that was added
by your patch? I'll commit it if tests pass but new warning is not good.

> [drlvm][jvmti] JVMTI function GetThreadGroupChildren() return no more than 10 child threds
and groups
> -----------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3894
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3894
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Windows, Linux, harmony-hdk-r538813
>            Reporter: Ivan Popov
>         Assigned To: Gregory Shimansky
>         Attachments: H3894-GetThreadGroupChildren-fix.patch, H3894-Regression-test.patch
>
>
> Implementation of JVMTI function GetThreadGroupChildren() uses internal arrays of 10
elements to return child threads and groups (see jvmti_thred_group.cpp):
>     jclass cl = GetObjectClass(jvmti_test_jenv, group);
>     jobjectArray jg = jvmti_test_jenv -> NewObjectArray(10, cl, 0);
>     jmethodID id = jvmti_test_jenv -> GetMethodID(cl, "enumerate","([Ljava/lang/ThreadGroup;)I");
>     int cc = jvmti_test_jenv -> CallIntMethod (group, id, jg);
>     jclass cll = struct_Class_to_java_lang_Class_Handle(VM_Global_State::loader_env->java_lang_Thread_Class);
>     jobjectArray jt = jvmti_test_jenv -> NewObjectArray(10, cll, 0);
>     id = jvmti_test_jenv -> GetMethodID(cl, "enumerate","([Ljava/lang/Thread;Z)I");
>     cc = jvmti_test_jenv -> CallIntMethod (group, id, jt, JNI_FALSE);
> The other problem is that used ThreadGroup methods with array argument are not precise
and may report not all threads and groups. Instead, similar methods with List argument should
be used.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message