OSDN Git Service

Updating header files. Earlier change here seems to have been in error.
[pf3gnuchains/gcc-fork.git] / libjava / java / lang / Thread.h
1
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3
4 #ifndef __java_lang_Thread__
5 #define __java_lang_Thread__
6
7 #pragma interface
8
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
11
12 extern "Java"
13 {
14   namespace gnu
15   {
16     namespace gcj
17     {
18         class RawData;
19         class RawDataManaged;
20     }
21     namespace java
22     {
23       namespace util
24       {
25           class WeakIdentityHashMap;
26       }
27     }
28   }
29 }
30
31 class _Jv_JNIEnv;
32 #define _JV_NOT_OWNER 1
33 #define _JV_INTERRUPTED 2
34 _Jv_JNIEnv * _Jv_GetCurrentJNIEnv ();
35 void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);
36 void _Jv_ThreadRun (java::lang::Thread* thread);
37 jint _Jv_AttachCurrentThread(java::lang::Thread* thread);
38 java::lang::Thread* _Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);
39 java::lang::Thread* _Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);
40 jint _Jv_DetachCurrentThread ();
41 struct _Jv_Thread_t;
42 _Jv_Thread_t* _Jv_ThreadGetData (java::lang::Thread* thread);
43
44 class java::lang::Thread : public ::java::lang::Object
45 {
46
47 public:
48   Thread();
49   Thread(::java::lang::Runnable *);
50   Thread(::java::lang::String *);
51   Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *);
52   Thread(::java::lang::ThreadGroup *, ::java::lang::String *);
53   Thread(::java::lang::Runnable *, ::java::lang::String *);
54   Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *);
55   Thread(::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *, jlong);
56 public: // actually package-private
57   Thread(::java::lang::String *, jboolean);
58 private:
59   Thread(::java::lang::Thread *, ::java::lang::ThreadGroup *, ::java::lang::Runnable *, ::java::lang::String *, jboolean);
60 public:
61   static jint activeCount();
62   virtual void checkAccess();
63   virtual jint countStackFrames();
64   static ::java::lang::Thread * currentThread();
65   virtual void destroy();
66   static void dumpStack();
67   static jint enumerate(JArray< ::java::lang::Thread * > *);
68   virtual ::java::lang::String * getName();
69   virtual jint getPriority();
70   virtual ::java::lang::ThreadGroup * getThreadGroup();
71   static jboolean holdsLock(::java::lang::Object *);
72   virtual void interrupt();
73   static jboolean interrupted();
74   virtual jboolean isInterrupted();
75   virtual jboolean isAlive();
76   virtual jboolean isDaemon();
77   virtual void join();
78   virtual void join(jlong);
79   virtual void join(jlong, jint);
80   virtual void resume();
81 private:
82   void finish_();
83   jboolean isInterrupted(jboolean);
84 public:
85   virtual void run();
86   virtual void setDaemon(jboolean);
87   virtual ::java::lang::ClassLoader * getContextClassLoader();
88   virtual void setContextClassLoader(::java::lang::ClassLoader *);
89   virtual void setName(::java::lang::String *);
90   static void yield();
91   static void sleep(jlong);
92   static void sleep(jlong, jint);
93   virtual void start();
94   virtual void stop();
95   virtual void stop(::java::lang::Throwable *);
96   virtual void suspend();
97   virtual void setPriority(jint);
98   virtual ::java::lang::String * toString();
99 private:
100   void initialize_native();
101   static ::java::lang::String * gen_name();
102 public: // actually package-private
103   static ::java::util::Map * getThreadLocals();
104 public:
105   virtual void setUncaughtExceptionHandler(::java::lang::Thread$UncaughtExceptionHandler *);
106   virtual ::java::lang::Thread$UncaughtExceptionHandler * getUncaughtExceptionHandler();
107   static void setDefaultUncaughtExceptionHandler(::java::lang::Thread$UncaughtExceptionHandler *);
108   static ::java::lang::Thread$UncaughtExceptionHandler * getDefaultUncaughtExceptionHandler();
109   virtual jlong getId();
110   virtual ::java::lang::Thread$State * getState();
111   static ::java::util::Map * getAllStackTraces();
112   virtual JArray< ::java::lang::StackTraceElement * > * getStackTrace();
113   static const jint MIN_PRIORITY = 1;
114   static const jint NORM_PRIORITY = 5;
115   static const jint MAX_PRIORITY = 10;
116 public: // actually package-private
117   ::java::lang::ThreadGroup * __attribute__((aligned(__alignof__( ::java::lang::Object)))) group;
118 private:
119   ::java::lang::Runnable * runnable;
120 public: // actually package-private
121   ::java::lang::String * name;
122 private:
123   jboolean daemon;
124   jint priority;
125 public: // actually package-private
126   jboolean interrupt_flag;
127 private:
128   static const jbyte THREAD_DEAD = 0;
129   static const jbyte THREAD_ALIVE = 1;
130   static const jbyte THREAD_SIGNALED = 2;
131   jboolean startable_flag;
132   ::java::lang::ClassLoader * contextClassLoader;
133   jlong threadId;
134   static jlong nextThreadId;
135   static jlong totalThreadsCreated;
136   static ::java::lang::Thread$UncaughtExceptionHandler * defaultHandler;
137 public: // actually package-private
138   ::gnu::java::util::WeakIdentityHashMap * locals;
139   ::java::lang::Thread$UncaughtExceptionHandler * exceptionHandler;
140 private:
141   ::java::lang::Object * parkBlocker;
142 public: // actually package-private
143   static const jbyte THREAD_PARK_RUNNING = 0;
144   static const jbyte THREAD_PARK_PERMIT = 1;
145   static const jbyte THREAD_PARK_PARKED = 2;
146   static const jbyte THREAD_PARK_DEAD = 3;
147   ::java::lang::Object * accessControlState;
148   ::gnu::gcj::RawData * interp_frame;
149   ::gnu::gcj::RawData * frame;
150   jint volatile state;
151   ::gnu::gcj::RawDataManaged * data;
152 public:
153   static ::java::lang::Class class$;
154
155   friend _Jv_JNIEnv * ::_Jv_GetCurrentJNIEnv ();
156   friend void ::_Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);
157   friend void ::_Jv_ThreadRun (java::lang::Thread* thread);
158   friend jint (::_Jv_AttachCurrentThread) (java::lang::Thread* thread);
159   friend java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);
160   friend java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);
161   friend jint (::_Jv_DetachCurrentThread) ();
162 };
163
164 #endif // __java_lang_Thread__