您的位置:首页 > 其它

多线程的初步学习

2015-10-08 20:44 197 查看

一、Java中多线程的创建和使用
① 继承Thread 类和实现Runnable接口
② Thread类的主要方法
③ 线程的调度与实现优先级
 
程序、进程与线程的关系:
程序是静态的,进程是动态的,进程可细分为线程。
 
多线程的创建和启动 需要通过java.lang.Thread类来实现
例如:
//创建一个子线程:完成1-100自然数的输出,主线程执行相同的操作
//创建方法1:继承java.lang.Thread 类
//1、创建一个继承与Thread类的子类
Class SubThread extends Thread{
//2、重写Threa类的run()方法,方法内实现子线程的功能
Public void run(){
  For(int i=1;i<=100;i++){
   System.out.println(i);
}
}
 
Public class TestThread{
  Public static void main(String args[]){
     //3、创建一个子类的对象
SubThread st=new SubThread();
//4、调用线程的start():启动此线程调用相应的run()方法
St.start();
For(int i=1;i<=100;i++){
  System.out.println(i);
}
}
}
}
 
在此需要注意,一个线程只能执行一次start()方法。若想要开启两个线程,则需要再创建一个子类对象,执行start()方法。
若用st.run();则并没有启动线程,必须用start()方法启动。
不能通过Threa实现类对象的run()去启动一个线程。
 
 
Thread的常用方法:
1、start():启动线程并执行相应的run()方法
2、run():子线程要执行的代码放入run()方法中
3、currentThread():静态的,调去当前线程
4、getName():获取此线程的名字
5、setName():设置此线程的名字
6、yield():调用此方法的线程,释放当前CPU的执行权
7、Join():在A线程中调用B线程的join()方法,表示:当执行到此方法,A线程停止执行,直至B线程执行完毕,A线程再在join方法后执行。
8、isAlive():判断啊当前线程是否还存活
9、Sleep(long l):显示的让当前线程睡眠l毫秒
10、设置线程的优先级
线程的优先级控制
1) MAX_PRIORITY(10);//最高优先级
2) MIN_PRIORITY(1);//最低优先级
3) NORM_PRIORITY(5);//默认的优先级
涉及到的方法:
① getPriority():返回线程的优先值
② setPriority(int newPriority):改变线程的优先级
 
线程创建时继承父线程的优先级
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: