如何创建线程
来源:互联网 发布:android json解析工具 编辑:程序博客网 时间:2024/04/28 00:58
有两种方式来创建一个线程:
- 通过扩展Thread类
- 通过实现Runnable接口。
Thread类:
Thread类提供构造函数和方法来创建和执行线程的操作.Thread类扩展了Object类并实现了Runnable接口。常用的Thread类构造函数:
- Thread()
- Thread(String name)
- Thread(Runnable r)
- Thread(Runnable r,String name)
Thread类常用的方法:
- public void run(): 用于为线程执行操作。
- public void start(): 启动线程的执行.JVM在线程上调用run()方法。
- public void sleep(long miliseconds): 使当前正在执行的线程休眠(临时停止执行)指定的毫秒数。
- public void join(): 等待线程死机。
- public void join(long miliseconds): 等待一个线程死亡指定的毫秒数。
- public int getPriority(): 返回线程的优先级。
- public int setPriority(int priority): 更改线程的优先级。
- public String getName(): 返回线程的名称。
- public void setName(String name): 更改线程的名称。
- public Thread currentThread(): 返回当前正在执行的线程的引用。
- public int getId(): 返回线程的id。
- public Thread.State getState(): 返回线程的状态。
- public boolean isAlive(): 测试线程是否存活。
- public void yield(): 导致当前正在执行的线程对象临时暂停并允许其他线程执行。
- public void suspend(): 用于挂起线程(depricated)。
- public void resume(): 用于恢复挂起的线程(depricated)。
- public void stop(): 用于停止线程(depricated)。
- public boolean isDaemon(): 测试线程是否是守护进程线程。
- public void setDaemon(boolean b): 将线程标记为守护程序或用户线程。
- public void interrupt(): 中断线程。
- public boolean isInterrupted(): 测试线程是否已被中断。
- public static boolean blocked(): 测试当前线程是否被中断。
可运行界面:
Runnable接口应该由其实例旨在由线程执行的任何类来实现。Runnable接口只有一个名为run()的方法。- public void run(): 用于为线程执行操作。
开始线程:
Thread类的start()方法用于启动新创建的线程。它执行以下任务:- 新线程启动(带有新的callstack)。
- 线程从新状态移动到Runnable状态。
- 当线程有机会执行时,它的目标run()方法将运行。
1)Java Thread示例通过扩展Thread类
输出:thread is running...
2)通过实现Runnable接口的Java Thread实例
输出:thread is running...
阅读全文
0 0
- 什么是线程,如何创建线程
- 什么是线程,如何创建线程 .
- 如何创建线程
- symbian 如何创建线程
- 如何创建线程?
- 如何创建线程
- 如何创建线程
- 如何创建线程
- 如何创建线程
- Java 如何创建线程
- vc如何创建 线程池
- 如何:创建和终止线程
- Executor内部如何创建线程?
- 关于如何创建线程池
- 如何创建和使用线程
- java源码如何创建线程
- 如何创建线程进程 转载
- 安卓 如何创建线程
- VS中常用的快捷键
- QGraphicsScene中Item缩放问题
- Release和Debug模式的区别以及Opencv在Release和Debug不同模式下的配置
- LinkedList集合模拟堆栈,队列数据结构
- quartz 基于spring注解实现
- 如何创建线程
- vue项目优化 --- 按需加载组件(require-resure)
- (转)贝莱德的“阿拉丁”神灯
- Jquery第三篇【AJAX 相关的API】
- win8操作系统下使用telnet客户端
- http程序中:UTF-8转GBK解决中文乱码问题
- synchronized关键字修饰对象锁,同步与非同步对该方法的访问及修改
- SetDlgItemText
- PAT 1040.有几个PAT