#include <ActivityManager.hpp>
Public Member Functions | |
NativeContextBlock () | |
~NativeContextBlock () | |
RexxObject * | protect (RexxObject *o) |
Public Attributes | |
RexxNativeActivation * | self |
RexxActivity * | activity |
InterpreterInstance * | instance |
Definition at line 381 of file ActivityManager.hpp.
NativeContextBlock::NativeContextBlock | ( | ) |
Enter a native context block. This will locate the appropriate activity for this callback and acquire kernel access on that activity. If this thread has never been used, then a new interpreter instance will be created and the thread attached to that instance.
Definition at line 871 of file ActivityManager.cpp.
References activity, Interpreter::createInterpreterInstance(), ActivityManager::getActivity(), InterpreterInstance::getRootActivity(), RexxActivity::getTopStackFrame(), instance, and OREF_NULL.
NativeContextBlock::~NativeContextBlock | ( | ) |
Release the kernal access and cleanup when the context block goes out of scope.
Definition at line 895 of file ActivityManager.cpp.
References activity, RexxActivity::exitCurrentThread(), instance, OREF_NULL, and InterpreterInstance::terminate().
RexxObject * NativeContextBlock::protect | ( | RexxObject * | o | ) |
Protect an object that associated with the current native context. This creates a local reference that will lock the object into memory until the native activation is popped off the stack.
o | The object to protect (can be null). |
Definition at line 916 of file ActivityManager.cpp.
RexxActivity* NativeContextBlock::activity |
Definition at line 389 of file ActivityManager.hpp.
Referenced by NativeContextBlock(), and ~NativeContextBlock().
InterpreterInstance* NativeContextBlock::instance |
Definition at line 390 of file ActivityManager.hpp.
Referenced by NativeContextBlock(), and ~NativeContextBlock().
RexxNativeActivation* NativeContextBlock::self |
Definition at line 388 of file ActivityManager.hpp.
Referenced by RexxStemSort(), and RexxVariablePool().