// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __java_lang_Thread__ #define __java_lang_Thread__ #pragma interface #include #include extern "Java" { namespace gnu { namespace gcj { class RawData; class RawDataManaged; } namespace java { namespace util { class WeakIdentityHashMap; } } } } class _Jv_JNIEnv; #define _JV_NOT_OWNER 1 #define _JV_INTERRUPTED 2 _Jv_JNIEnv * _Jv_GetCurrentJNIEnv (); void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env); void _Jv_ThreadRun (java::lang::Thread* thread); jint _Jv_AttachCurrentThread(java::lang::Thread* thread); java::lang::Thread* _Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group); java::lang::Thread* _Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group); jint _Jv_DetachCurrentThread (); struct _Jv_Thread_t; _Jv_Thread_t* _Jv_ThreadGetData (java::lang::Thread* thread); class java::lang::Thread : public ::java::lang::Object { public: Thread(); Thread(::java::lang::Runnable *); Thread(::java::lang::String *); Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *); Thread(::java::lang::ThreadGroup *, ::java::lang::String *); Thread(::java::lang::Runnable *, ::java::lang::String *); Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *); Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *, jlong); public: // actually package-private Thread(::java::lang::String *, jboolean); private: Thread(::java::lang::Thread *, ::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *, jboolean); public: static jint activeCount(); virtual void checkAccess(); virtual jint countStackFrames(); static ::java::lang::Thread * currentThread(); virtual void destroy(); static void dumpStack(); static jint enumerate(JArray< ::java::lang::Thread * > *); virtual ::java::lang::String * getName(); virtual jint getPriority(); virtual ::java::lang::ThreadGroup * getThreadGroup(); static jboolean holdsLock(::java::lang::Object *); virtual void interrupt(); static jboolean interrupted(); virtual jboolean isInterrupted(); virtual jboolean isAlive(); virtual jboolean isDaemon(); virtual void join(); virtual void join(jlong); virtual void join(jlong, jint); virtual void resume(); private: void finish_(); jboolean isInterrupted(jboolean); public: virtual void run(); virtual void setDaemon(jboolean); virtual ::java::lang::ClassLoader * getContextClassLoader(); virtual void setContextClassLoader(::java::lang::ClassLoader *); virtual void setName(::java::lang::String *); static void yield(); static void sleep(jlong); static void sleep(jlong, jint); virtual void start(); virtual void stop(); virtual void stop(::java::lang::Throwable *); virtual void suspend(); virtual void setPriority(jint); virtual ::java::lang::String * toString(); private: void initialize_native(); static ::java::lang::String * gen_name(); public: // actually package-private static ::java::util::Map * getThreadLocals(); public: virtual void setUncaughtExceptionHandler(::java::lang::Thread$UncaughtExceptionHandler *); virtual ::java::lang::Thread$UncaughtExceptionHandler * getUncaughtExceptionHandler(); static void setDefaultUncaughtExceptionHandler(::java::lang::Thread$UncaughtExceptionHandler *); static ::java::lang::Thread$UncaughtExceptionHandler * getDefaultUncaughtExceptionHandler(); virtual jlong getId(); virtual ::java::lang::Thread$State * getState(); static ::java::util::Map * getAllStackTraces(); virtual JArray< ::java::lang::StackTraceElement * > * getStackTrace(); static const jint MIN_PRIORITY = 1; static const jint NORM_PRIORITY = 5; static const jint MAX_PRIORITY = 10; public: // actually package-private ::java::lang::ThreadGroup * __attribute__((aligned(__alignof__( ::java::lang::Object)))) group; private: ::java::lang::Runnable * runnable; public: // actually package-private ::java::lang::String * name; private: jboolean daemon; jint priority; public: // actually package-private jboolean interrupt_flag; private: static const jbyte THREAD_DEAD = 0; static const jbyte THREAD_ALIVE = 1; static const jbyte THREAD_SIGNALED = 2; jboolean startable_flag; ::java::lang::ClassLoader * contextClassLoader; jlong threadId; static jlong nextThreadId; static jlong totalThreadsCreated; static ::java::lang::Thread$UncaughtExceptionHandler * defaultHandler; public: // actually package-private ::gnu::java::util::WeakIdentityHashMap * locals; ::java::lang::Thread$UncaughtExceptionHandler * exceptionHandler; private: ::java::lang::Object * parkBlocker; public: // actually package-private static const jbyte THREAD_PARK_RUNNING = 0; static const jbyte THREAD_PARK_PERMIT = 1; static const jbyte THREAD_PARK_PARKED = 2; static const jbyte THREAD_PARK_DEAD = 3; ::java::lang::Object * accessControlState; ::gnu::gcj::RawData * interp_frame; ::gnu::gcj::RawData * frame; jint volatile state; ::gnu::gcj::RawDataManaged * data; public: static ::java::lang::Class class$; friend _Jv_JNIEnv * ::_Jv_GetCurrentJNIEnv (); friend void ::_Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env); friend void ::_Jv_ThreadRun (java::lang::Thread* thread); friend jint (::_Jv_AttachCurrentThread) (java::lang::Thread* thread); friend java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group); friend java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group); friend jint (::_Jv_DetachCurrentThread) (); }; #endif // __java_lang_Thread__