21.9.24 Thread类
目录
一、Thread类
Field Summary
构造方法摘要
方法摘要
一、Thread类
Modifier and Type | Class and Description |
---|---|
static class | Thread.State 线程状态。 |
static interface | Thread.UncaughtExceptionHandler 当Thread由于未捕获的异常而突然终止时,处理程序的 接口被调用。 |
Field Summary
Modifier and Type | Field and Description |
---|---|
static int | MAX_PRIORITY 线程可以拥有的最大优先级。 |
static int | MIN_PRIORITY 线程可以拥有的最小优先级。 |
static int | NORM_PRIORITY 分配给线程的默认优先级。 |
构造方法摘要
Constructor and Description |
---|
Thread() 分配一个新的 |
Thread(Runnable target) 分配一个新的 |
Thread(Runnable target, String name) 分配一个新的 |
Thread(String name) 分配一个新的 |
Thread(ThreadGroup group, Runnable target) 分配一个新的 |
Thread(ThreadGroup group, Runnable target, String name) 分配一个新的 |
Thread(ThreadGroup group, Runnable target, String name, long stackSize) 分配一个新的 |
Thread(ThreadGroup group, String name) 分配一个新的 |
方法摘要
Modifier and Type | Method and Description |
---|---|
static int | activeCount() 返回当前线程的thread group及其子组中活动线程数的估计。 |
void | checkAccess() 确定当前正在运行的线程是否有权限修改此线程。 |
protected Object | clone() 将CloneNotSupportedException作为线程抛出无法有意义地克隆。 |
int | countStackFrames() 已弃用 此呼叫的定义取决于suspend() ,它已被弃用。 此外,此呼叫的结果从未明确。 |
static Thread | currentThread() 返回对当前正在执行的线程对象的引用。 |
void | destroy() 已弃用 这种方法最初是为了销毁这个线程而没有任何清理。 它所持有的任何监视器都将保持锁定。 但是,该方法从未实现。 如果要实施,那么它将是suspend()的方式是僵死的 。 如果目标线程在销毁时保护关键系统资源的锁,则无法再次访问该资源。 如果另一个线程曾尝试锁定此资源,将导致死锁。 这种僵局通常表现为“冻结”过程。 有关详细信息,请参阅Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 。 |
static void | dumpStack() 将当前线程的堆栈跟踪打印到标准错误流。 |
static int | enumerate(Thread[] tarray) 将当前线程的线程组及其子组中的每个活动线程复制到指定的数组中。 |
static Map<Thread,StackTraceElement[]> | getAllStackTraces() 返回所有活动线程的堆栈跟踪图。 |
ClassLoader | getContextClassLoader() 返回此Thread的上下文ClassLoader。 |
static Thread.UncaughtExceptionHandler | getDefaultUncaughtExceptionHandler() 返回当线程由于未捕获异常突然终止而调用的默认处理程序。 |
long | getId() 返回此线程的标识符。 |
String | getName() 返回此线程的名称。 |
int | getPriority() 返回此线程的优先级。 |
StackTraceElement[] | getStackTrace() 返回表示此线程的堆栈转储的堆栈跟踪元素数组。 |
Thread.State | getState() 返回此线程的状态。 |
ThreadGroup | getThreadGroup() 返回此线程所属的线程组。 |
Thread.UncaughtExceptionHandler | getUncaughtExceptionHandler() 返回由于未捕获的异常,此线程突然终止时调用的处理程序。 |
static boolean | holdsLock(Object obj) 返回 true当且仅当当前线程在指定的对象上保持监视器锁。 |
void | interrupt() 中断这个线程。 |
static boolean | interrupted() 测试当前线程是否中断。 |
boolean | isAlive() 测试这个线程是否活着。 |
boolean | isDaemon() 测试这个线程是否是守护线程。 |
boolean | isInterrupted() 测试这个线程是否被中断。 |
void | join() 等待这个线程死亡。 |
void | join(long millis) 等待这个线程死亡最多 |
void | join(long millis, int nanos) 等待最多 |
void | resume() 已弃用 该方法仅用于与suspend()一起使用,因为它是死锁倾向的,因此已被弃用。 有关详细信息,请参阅Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 。 |
void | run() 如果这个线程使用单独的 |
void | setContextClassLoader(ClassLoader cl) 设置此线程的上下文ClassLoader。 |
void | setDaemon(boolean on) 将此线程标记为 daemon线程或用户线程。 |
static void | setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) 设置当线程由于未捕获的异常突然终止而调用的默认处理程序,并且没有为该线程定义其他处理程序。 |
void | setName(String name) 将此线程的名称更改为等于参数 |
void | setPriority(int newPriority) 更改此线程的优先级。 |
void | setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) 设置当该线程由于未捕获的异常而突然终止时调用的处理程序。 |
static void | sleep(long millis) 使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。 |
static void | sleep(long millis, int nanos) 导致正在执行的线程以指定的毫秒数加上指定的纳秒数来暂停(临时停止执行),这取决于系统定时器和调度器的精度和准确性。 |
void | start() 导致此线程开始执行; Java虚拟机调用此线程的 |
void | stop() 已弃用 这种方法本质上是不安全的。 使用Thread.stop停止线程可以解锁所有已锁定的监视器(由于未 |
void | stop(Throwable obj) 已弃用 该方法最初设计为强制线程停止并抛出一个给定的 |
void | suspend() 已弃用 这种方法已被弃用,因为它本身就是死锁的。 如果目标线程在挂起时保护关键系统资源的监视器上的锁定,则在目标线程恢复之前,线程不能访问该资源。 如果要恢复目标线程的线程在调用 |
String | toString() 返回此线程的字符串表示,包括线程的名称,优先级和线程组。 |
static void | yield() 对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。 |
21.9.24 Thread类
目录
一、Thread类
Field Summary
构造方法摘要
方法摘要
一、Thread类
Modifier and Type | Class and Description |
---|---|
static class | Thread.State 线程状态。 |
static interface | Thread.UncaughtExceptionHandler 当Thread由于未捕获的异常而突然终止时,处理程序的 接口被调用。 |
Field Summary
Modifier and Type | Field and Description |
---|---|
static int | MAX_PRIORITY 线程可以拥有的最大优先级。 |
static int | MIN_PRIORITY 线程可以拥有的最小优先级。 |
static int | NORM_PRIORITY 分配给线程的默认优先级。 |
构造方法摘要
Constructor and Description |
---|
Thread() 分配一个新的 |
Thread(Runnable target) 分配一个新的 |
Thread(Runnable target, String name) 分配一个新的 |
Thread(String name) 分配一个新的 |
Thread(ThreadGroup group, Runnable target) 分配一个新的 |
Thread(ThreadGroup group, Runnable target, String name) 分配一个新的 |
Thread(ThreadGroup group, Runnable target, String name, long stackSize) 分配一个新的 |
Thread(ThreadGroup group, String name) 分配一个新的 |
方法摘要
Modifier and Type | Method and Description |
---|---|
static int | activeCount() 返回当前线程的thread group及其子组中活动线程数的估计。 |
void | checkAccess() 确定当前正在运行的线程是否有权限修改此线程。 |
protected Object | clone() 将CloneNotSupportedException作为线程抛出无法有意义地克隆。 |
int | countStackFrames() 已弃用 此呼叫的定义取决于suspend() ,它已被弃用。 此外,此呼叫的结果从未明确。 |
static Thread | currentThread() 返回对当前正在执行的线程对象的引用。 |
void | destroy() 已弃用 这种方法最初是为了销毁这个线程而没有任何清理。 它所持有的任何监视器都将保持锁定。 但是,该方法从未实现。 如果要实施,那么它将是suspend()的方式是僵死的 。 如果目标线程在销毁时保护关键系统资源的锁,则无法再次访问该资源。 如果另一个线程曾尝试锁定此资源,将导致死锁。 这种僵局通常表现为“冻结”过程。 有关详细信息,请参阅Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 。 |
static void | dumpStack() 将当前线程的堆栈跟踪打印到标准错误流。 |
static int | enumerate(Thread[] tarray) 将当前线程的线程组及其子组中的每个活动线程复制到指定的数组中。 |
static Map<Thread,StackTraceElement[]> | getAllStackTraces() 返回所有活动线程的堆栈跟踪图。 |
ClassLoader | getContextClassLoader() 返回此Thread的上下文ClassLoader。 |
static Thread.UncaughtExceptionHandler | getDefaultUncaughtExceptionHandler() 返回当线程由于未捕获异常突然终止而调用的默认处理程序。 |
long | getId() 返回此线程的标识符。 |
String | getName() 返回此线程的名称。 |
int | getPriority() 返回此线程的优先级。 |
StackTraceElement[] | getStackTrace() 返回表示此线程的堆栈转储的堆栈跟踪元素数组。 |
Thread.State | getState() 返回此线程的状态。 |
ThreadGroup | getThreadGroup() 返回此线程所属的线程组。 |
Thread.UncaughtExceptionHandler | getUncaughtExceptionHandler() 返回由于未捕获的异常,此线程突然终止时调用的处理程序。 |
static boolean | holdsLock(Object obj) 返回 true当且仅当当前线程在指定的对象上保持监视器锁。 |
void | interrupt() 中断这个线程。 |
static boolean | interrupted() 测试当前线程是否中断。 |
boolean | isAlive() 测试这个线程是否活着。 |
boolean | isDaemon() 测试这个线程是否是守护线程。 |
boolean | isInterrupted() 测试这个线程是否被中断。 |
void | join() 等待这个线程死亡。 |
void | join(long millis) 等待这个线程死亡最多 |
void | join(long millis, int nanos) 等待最多 |
void | resume() 已弃用 该方法仅用于与suspend()一起使用,因为它是死锁倾向的,因此已被弃用。 有关详细信息,请参阅Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 。 |
void | run() 如果这个线程使用单独的 |
void | setContextClassLoader(ClassLoader cl) 设置此线程的上下文ClassLoader。 |
void | setDaemon(boolean on) 将此线程标记为 daemon线程或用户线程。 |
static void | setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) 设置当线程由于未捕获的异常突然终止而调用的默认处理程序,并且没有为该线程定义其他处理程序。 |
void | setName(String name) 将此线程的名称更改为等于参数 |
void | setPriority(int newPriority) 更改此线程的优先级。 |
void | setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) 设置当该线程由于未捕获的异常而突然终止时调用的处理程序。 |
static void | sleep(long millis) 使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。 |
static void | sleep(long millis, int nanos) 导致正在执行的线程以指定的毫秒数加上指定的纳秒数来暂停(临时停止执行),这取决于系统定时器和调度器的精度和准确性。 |
void | start() 导致此线程开始执行; Java虚拟机调用此线程的 |
void | stop() 已弃用 这种方法本质上是不安全的。 使用Thread.stop停止线程可以解锁所有已锁定的监视器(由于未 |
void | stop(Throwable obj) 已弃用 该方法最初设计为强制线程停止并抛出一个给定的 |
void | suspend() 已弃用 这种方法已被弃用,因为它本身就是死锁的。 如果目标线程在挂起时保护关键系统资源的监视器上的锁定,则在目标线程恢复之前,线程不能访问该资源。 如果要恢复目标线程的线程在调用 |
String | toString() 返回此线程的字符串表示,包括线程的名称,优先级和线程组。 |
static void | yield() 对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。 |
发布评论