java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言, 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台 (即 JavaEE(j2ee), JavaME(j2me), JavaSE(j2se)) 的总称
下面小编就为大家带来一篇浅谈 java 多线程 join 方法以及优先级方法小编觉得挺不错的, 现在就分享给大家, 也给大家做个参考一起跟随小编过来看看吧
join:
当 A 线程执行到了 B 线程的. join()方法时, A 就会等待等 B 线程都执行完, A 才会执行
join 可以用来临时加入线程执行
1 线程使用 join 方法, 主线程就停下, 等它执行完, 那么如果该线程冻结了, 主线程就挂了, 这也是为什么线程要抛异常的原因
2 当两个或以上线程开启了, 这个 A 线程才使用 join 方法, 那么主线程还是停下, 这几个个线程交替进行, 直到 A 执行完, 主线程才复活
1. tostring(), 方法, 获取线程具体的名字, 优先级
2. 优先级代表抢资源的频率
3. java 中设置有 1 - 5 - 10 这三个级别, 因为是固定值, 所以用字母大写表示
4. 跟设置后台线程一样, 都属于线程的函数, 由线程对象直接调用 r.setPriority(Thread. 字母级别)
5. 匿名内部类? 是多线程的关键, 必须掌握
- class Demo implements Runnable
- {
- public void run()
- {
- for(int x=0; x<70; x++)
- {
- System.out.println(Thread.currentThread().toString()+"....."+x);
- Thread.yield();
- }
- }
- }
- class JoinDemo
- {
- public static void main(String[] args) throws Exception
- {
- Demo d = new Demo();
- Thread t1 = new Thread(d);
- Thread t2 = new Thread(d);
- t1.start();
- //t1.setPriority(Thread.MAX_PRIORITY);
- t2.start();
- //t1.join();
- for(int x=0; x<80; x++)
- {
- //System.out.println("main....."+x);
- }
- System.out.println("over");
- }
- }
来源: http://www.phperz.com/article/18/0219/358782.html