Example #1
0
        internal JvmStackInfo(JvmThreadReference thread, jvmtiThreadState state, ReadOnlyCollection <JvmLocation> frames)
        {
            Contract.Requires <ArgumentNullException>(thread != null, "thread");
            Contract.Requires <ArgumentNullException>(frames != null, "frames");

            _thread = thread;
            _state  = state;
            _frames = frames;
        }
Example #2
0
        public jvmtiError GetThreadState(JvmVirtualMachineRemoteHandle virtualMachine, JvmThreadRemoteHandle thread, out jvmtiThreadState threadState)
        {
            JavaVM machine = JavaVM.GetInstance(virtualMachine);

            jvmtiThreadState threadStateResult = jvmtiThreadState.None;
            jvmtiError       result            = jvmtiError.Internal;

            machine.InvokeOnJvmThread(
                (environment) =>
            {
                jvmtiInterface rawInterface = environment.RawInterface;
                result = rawInterface.GetThreadState(environment.Handle, thread, out threadStateResult);
            });

            threadState = threadStateResult;
            return(result);
        }
        public bool GetIsSuspended()
        {
            jvmtiThreadState state = Environment.GetThreadState(this);

            return((state & jvmtiThreadState.Suspended) != 0);
        }