2007-04-24 Kyle Galloway <kgallowa@redhat.com>
* gnu/classpath/jdwp/natVMVirtualMachine.java (getThreadStatus): Implement. From-SVN: r124117
This commit is contained in:
parent
2d83f07035
commit
7c4a926515
|
@ -1,3 +1,8 @@
|
|||
2007-04-24 Kyle Galloway <kgallowa@redhat.com>
|
||||
|
||||
* gnu/classpath/jdwp/natVMVirtualMachine.java
|
||||
(getThreadStatus): Implement.
|
||||
|
||||
2007-04-24 Keith Seitz <keiths@redhat.com>
|
||||
|
||||
* headers.txt (gnu/gcj/jvmti/Breakpoint.h)[DIRECT_THREADED]:
|
||||
|
|
|
@ -31,6 +31,7 @@ details. */
|
|||
#include <gnu/classpath/jdwp/Jdwp.h>
|
||||
#include <gnu/classpath/jdwp/JdwpConstants$StepDepth.h>
|
||||
#include <gnu/classpath/jdwp/JdwpConstants$StepSize.h>
|
||||
#include <gnu/classpath/jdwp/JdwpConstants$ThreadStatus.h>
|
||||
#include <gnu/classpath/jdwp/VMFrame.h>
|
||||
#include <gnu/classpath/jdwp/VMMethod.h>
|
||||
#include <gnu/classpath/jdwp/VMVirtualMachine.h>
|
||||
|
@ -622,9 +623,37 @@ getFrameCount (Thread *thread)
|
|||
|
||||
jint
|
||||
gnu::classpath::jdwp::VMVirtualMachine::
|
||||
getThreadStatus (MAYBE_UNUSED Thread *thread)
|
||||
getThreadStatus (Thread *thread)
|
||||
{
|
||||
return 0;
|
||||
jint thr_state, status;
|
||||
|
||||
jvmtiError jerr = _jdwp_jvmtiEnv->GetThreadState (thread, &thr_state);
|
||||
if (jerr != JVMTI_ERROR_NONE)
|
||||
throw_jvmti_error (jerr);
|
||||
|
||||
if (thr_state & JVMTI_THREAD_STATE_SLEEPING)
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::SLEEPING;
|
||||
else if (thr_state & JVMTI_THREAD_STATE_RUNNABLE)
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::RUNNING;
|
||||
else if (thr_state & JVMTI_THREAD_STATE_WAITING)
|
||||
{
|
||||
if (thr_state & (JVMTI_THREAD_STATE_IN_OBJECT_WAIT
|
||||
| JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER))
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::MONITOR;
|
||||
else
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::WAIT;
|
||||
}
|
||||
else
|
||||
{
|
||||
// The thread is not SLEEPING, MONITOR, or WAIT. It may, however, be
|
||||
// alive but not yet started.
|
||||
if (!(thr_state & (JVMTI_THREAD_STATE_ALIVE
|
||||
| JVMTI_THREAD_STATE_TERMINATED)))
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::RUNNING;
|
||||
status = gnu::classpath::jdwp::JdwpConstants$ThreadStatus::ZOMBIE;
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
java::util::ArrayList *
|
||||
|
|
Loading…
Reference in New Issue