1 package multithread4;
2
3 /*
4 * toString():返回该线程的字符串表现形式,包括线程名称、优先级和线程组
5 * Thread[Thread-0,5,main]....14 5是优先级,main是所属线程组
6 *
7 * 字段 MAX_PRIORITY:线程可以具有的最高优先级
8 * MIN_PRIORITY:线程可以具有的最低优先级
9 * NORM_PRIORITY:分配给线程的默认优先级
10 *
11 * Thread(ThreadGroup group,Runnable target) 线程组
12 */
13 class Demo2 implements Runnable{
14 public void run() {
15 for (int x = 0; x < 50; x++) {
16 System.out.println(Thread.currentThread().toString()/*.getName()*/+"...."+x);
17 Thread.yield();//暂停线程,释放执行权,和另一个线程和谐点
18 }
19 }
20 }
21
22 public class JoinDemo {
23
24 public static void main(String[] args) throws Exception{
25 // TODO Auto-generated method stub
26 Demo2 d = new Demo2();
27 Thread t1 = new Thread(d);
28 Thread t2 = new Thread(d);
29
30 t1.start();
31
32 // t1.join();//t1线程要申请加入进来,运行。//等待t1线程终止
33 //临时加入一个线程运算时可以使用join方法
34 t2.start();
35 // t1.join();//主线程处于冻结状态,t1 t2都在抢执行权,但主线程只等待t1,等t1结束主线程才执行
36 t2.setPriority(Thread.MAX_PRIORITY);//设置线程优先级
37 for (int x = 0; x < 50; x++) {
38 System.out.println(Thread.currentThread()/*.getName()*/+"...."+x);
39 }
40 }
41
42 }

JoinDemo

多线程-其他方法-join等的更多相关文章

  1. 进程?线程?多线程?同步?异步?守护线程?非守护线程(用户线程)?线程的几种状态?多线程中的方法join()?

    1.进程?线程?多线程? 进程就是正在运行的程序,他是线程的集合. 线程是正在独立运行的一条执行路径. 多线程是为了提高程序的执行效率.2.同步?异步? 同步: 单线程 异步: 多线程 3.守护线程? ...

  2. 关于python多线程编程中join()和setDaemon()的一点儿探究

    关于python多线程编程中join()和setDaemon()的用法,这两天我看网上的资料看得头晕脑涨也没看懂,干脆就做一个实验来看看吧. 首先是编写实验的基础代码,创建一个名为MyThread的  ...

  3. C# 多线程限制方法调用(monitor)

    多线程执行方法 改方法没有执行完时 别的方法不能调用次方法.用循环执行一个方法可以需要一分钟 在这一分钟只内任何 成员都不能再调用该方法. class MonitorSample { ; //生产者和 ...

  4. Java并发编程(一) 两种实现多线程的方法(Thread,Runnable)

    Java中实现多线程的方法有两种: 继承Thread类和实现Runnable方法,并重写Run方法,然后调用start()方法启动线程.使用Runnable会比Thread要好很多,主要是以下三个原因 ...

  5. C#多线程实现方法——Task/Task.Factary

    原文:C#多线程实现方法--Task/Task.Factary Task 使用 Task以及Task.Factory都是在.Net 4引用的.Task跟Thread很类似,通过下面例子可以看到. st ...

  6. 方法join()使用详解

    在线程的常见方法一节中,已经接触过join()方法的使用. 在很多情况下,主线程创建并启动子线程,如果子线程中要进行大量的耗时运算,主线程将早于子线程结束.这时,如果主线程想等子线程执行完成才结束,比 ...

  7. 网络与多线程---OC中多线程使用方法(一)

    小编在此之前,通过一个小例子,简单的形容了一下进程与线程之间的关系,现在网络编程中的多线程说一下!!! *进程的基本概念 每一个进程都是一个应用程序,都有自己独立的内存空间,一般来说一个应用程序存在一 ...

  8. java多线程16:join()的使用

    讲解join()方法之前请确保对于即wait()/notify()/notifyAll()机制已熟练掌握.可以参考前面的笔记 join()方法的作用是等待线程销毁.join()方法反应的是一个很现实的 ...

  9. Linux内核多线程实现方法 —— kthread_create函数【转】

    转自:http://blog.csdn.net/sharecode/article/details/40076951 Linux内核多线程实现方法 —— kthread_create函数 内核经常需要 ...

随机推荐

  1. JS获取当前页面的网址链接

    JavaScript获取当前页面的URL .链接地址 var currUrl = decodeURIComponent(location.href.split('#')[0]); java获取方式:h ...

  2. Vue父子组件通信(父级向子级传递数据、子级向父级传递数据、Vue父子组件存储到data数据的访问)

    Vue父子组件通信(父级向子级传递数据.子级向父级传递数据.Vue父子组件存储到data数据的访问) 一.父级向子级传递数据[Prop]: ● Prop:子组件在自身标签上,使用自定义的属性来接收外界 ...

  3. soundcloud to mp3

    关于 本文将介绍一个在线网站,将songs 下载为mp3格式 注意, 大陆需要梯子. 没有?soundcloud无法打开 准备 soundcloud to mp3 一个来自soundcloud的歌曲链 ...

  4. win10使用照片查看器查看图片

    1.关于 演示环境: win10 1909 2.习惯win7的照片查看器 如果你习惯使用win7的照片查看器在win10查看照片,可以通过下面的注册表代码实现.方法:1.创建 后缀名为 .reg的文件 ...

  5. centos 与虚拟机

    一 创建虚拟机 1. 下载 centos7 和 vmware .centos的下载地址:见上一篇. 2.安装vmware ,具体安装过程,自行百度(一路点击确定) 3.打开vmware ,点击创建新的 ...

  6. datatables scrollX设置水平滚动无效问题

    如下:设置了水平滚动之后, 页面并没有滚动效果$(document).ready(function() { $('#example').dataTable( { "scrollX" ...

  7. python-mysql-replication原理分析

    源码地址:https://github.com/noplay/python-mysql-replication 文件解析: ├── binlogstream.py ├── bitmap.py ├── ...

  8. 【环境搭建】安装pyQt5 在pycharm报This application failed to start because no Qt platform plugin could be initialized的问题

    报错:This application failed to start because no Qt platform plugin could be initialized 解决办法: http:// ...

  9. 详解Kalman Filter

    中心思想 现有: 已知上一刻状态,预测下一刻状态的方法,能得到一个"预测值".(当然这个估计值是有误差的) 某种测量方法,可以测量出系统状态的"测量值".(当然 ...

  10. Java面向对象笔记 • 【第7章 集合】

    全部章节   >>>> 本章目录 7.1 集合概述 7.1.1 Java集合体系概述 7.1.2 实践练习 7.2 List集合 7.2.1 ArrayList实现类 7.2. ...