34 using namespace cacao;
54 utf8::java_lang_Thread__V,
73 assert(jlvmt.get_handle() != NULL);
74 assert(jlvmt.get_vmdata() == NULL);
101 if (*threadgroup_main == NULL)
102 vm_abort(
"thread_create_initial_threadgroups: failed to allocate main threadgroup");
140 utf8::java_lang_Thread__V,
static threadobject * get_thread_from_object(java_handle_t *h)
classinfo * class_java_lang_ThreadGroup
methodinfo * class_resolveclassmethod(classinfo *c, Utf8String name, Utf8String desc, classinfo *referer, bool throwexception)
virtual java_handle_t * get_handle() const
GNU Classpath java/lang/VMThread.
java_handle_t * get_name() const
static void thread_create_initial_threadgroups(java_handle_t **threadgroup_system, java_handle_t **threadgroup_main)
typedef void(JNICALL *jvmtiEventSingleStep)(jvmtiEnv *jvmti_env
void set_vmdata(threadobject *value)
static bool thread_is_daemon(threadobject *t)
java_handle_t * vm_call_method(methodinfo *m, java_handle_t *o,...)
classinfo * class_java_lang_VMThread
static java_handle_t * get_thread_exception_handler(const java_lang_Thread &jlt)
JNIEnv jclass jobject const char * name
static void set_javathread_state(threadobject *t, int state)
static methodinfo * thread_method_init
java_handle_t * builtin_new(classinfo *c)
void vm_abort(const char *text,...)
static java_handle_t * threadgroup_main
#define LLNI_class_get(obj, variable)
static Utf8String from_utf8(const char *, size_t)
static bool invoke_thread_initializer(java_lang_Thread &jlt, threadobject *t, methodinfo *thread_method_init, java_handle_t *name, java_handle_t *group)
static void clear_heap_reference(java_lang_Thread &jlt)
void set_group(java_handle_t *value)
static java_handle_t * threadgroup_system
void fprint(FILE *) const
static methodinfo * get_threadgroup_remove_method(classinfo *c)
java_handle_t * native_new_and_init(classinfo *c)
Registers a new native agent by specified by it's library name and with an optional options string...
java_handle_t * get_vmThread() const
static java_handle_t * get_vmthread_handle(const java_lang_Thread &jlt)
static void setup_thread_vmdata(const java_lang_Thread &jlt, threadobject *t)
java_handle_t * exceptions_get_exception(void)
threadobject * get_vmdata() const
GNU Classpath java/lang/Thread.
java_handle_t * get_exceptionHandler() const
static classinfo * get_thread_class_from_object(java_handle_t *object)
classinfo * class_java_lang_Thread
static void print_thread_name(const java_lang_Thread &jlt, FILE *stream)
static methodinfo * get_thread_init_method()