37 using namespace cacao;
105 #if defined(ENABLE_JAVASE)
124 if (handler != NULL) {
134 utf8::uncaughtException,
135 utf8::java_lang_Thread_java_lang_Throwable__V,
280 #if defined(ENABLE_INTRP)
281 t->_global_sp = NULL;
284 #if defined(ENABLE_GC_CACAO)
285 t->gc_critical =
false;
343 if (millis == 0 && nanos == 0) {
void exceptions_throw_illegalargumentexception(void)
methodinfo * class_resolveclassmethod(classinfo *c, Utf8String name, Utf8String desc, classinfo *referer, bool throwexception)
void threads_thread_interrupt(threadobject *t)
bool threads_suspend_thread(threadobject *thread, SuspendReason reason)
Suspend the passed thread.
void threads_unpark(threadobject *t)
Unpark the specified thread.
intptr_t threads_get_tid(threadobject *t)
void exceptions_throw_interruptedexception(void)
typedef void(JNICALL *jvmtiEventSingleStep)(jvmtiEnv *jvmti_env
java_handle_t * vm_call_method(methodinfo *m, java_handle_t *o,...)
static java_handle_t * get_thread_exception_handler(const java_lang_Thread &jlt)
void threads_impl_thread_clear(threadobject *t)
void threads_set_thread_priority(threadobject *t, int priority)
#define DEBUGTHREADS(message, thread)
void(* functionptr)(void)
java_handle_t * get_group() const
#define LLNI_class_get(obj, variable)
java_object_t * _exceptionptr
void threads_impl_thread_start(threadobject *thread, functionptr f)
localref_table * _localref_table
void threads_wait_with_timeout_relative(threadobject *thread, s8 millis, s4 nanos)
SuspendReason suspend_reason
#define exceptions_get_and_clear_exception
bool thread_is_interrupted(threadobject *t)
void thread_free(threadobject *t)
threadobject * thread_current
void threads_join_all_threads()
void threads_suspend_ack()
void thread_set_state_terminated(threadobject *t)
void set_group(java_handle_t *value)
bool thread_detach_current_thread(void)
Detaches the current thread from the VM.
static methodinfo * get_threadgroup_remove_method(classinfo *c)
java_handle_t * flc_object
void threads_impl_preinit()
void thread_set_interrupted(threadobject *t, bool interrupted)
static bool thread_is_attached(threadobject *t)
static threadobject * thread_get_current()
Return the threadobject for the current thread.
void threads_park(bool absolute, int64_t nanos)
Park the current thread for the specified amount of time or until a specified deadline.
void threads_impl_clear_heap_pointers(threadobject *t)
java_handle_t * exceptions_get_exception(void)
GNU Classpath java/lang/Thread.
stackframeinfo_t * _stackframeinfo
void threads_sleep(int64_t millis, int32_t nanos)
void threads_impl_thread_reuse(threadobject *t)
bool threads_resume_thread(threadobject *thread, SuspendReason reason)
Resumes execution of the passed thread.