java用Thread方式创建多线程

进程:一个正在执行的程序,每一个进程都有一个执行顺序,该
顺序是一个执行路径,或者叫一个控制单元。
线程:进程中一个独立的控制单元。线程控制着进程的执行。
一个进程中至少有一个线程。

java VM中至少有一个线程负责java程序的执行。
而且这个线程运行的代码存在于main方法中。该线程为主线程。

扩展,jvm启动了两个线程,一个主线程,一个垃圾回收机制的线程。

1.怎样创建一个多线程?
第一种方法:通过继承Thread类的方法
1.继承Thread类
2.重写Thread类的run()方法
目的:将自定义的代码存储在run()方法中,让线程运行。
3.调用线程的start()方法。
(了解:多核编程,单核cpu的时候多线程的切换由线程控制,多核cpu下
则每个cpu可以同时处理多线程,单个cpu在同一时间只能执行一个线程,
多核下内存是瓶颈)

多线程具有随机性:
因为多线程都获取cpu的执行权。cpu执行到谁,谁就执行。明确一点,在某一时刻
只能有一个程序在运行。(多核除外),cpu在做着快速的切换,以达到看上去是同
事运行的效果。至于每个线程执行多久,cpu说了算,(其实我们可以控制执行时间爱你)
为什么要覆盖run()方法?
Thread类用于描述线程。该类定义了一个功能,用于存储线程要运行的代码。该存储功能就是run方法。
也就是说Thread类中的run()方法用于存储线程要运行的代码。

//实例:
class Demo extends Thread
{
	public void run(){
		for(int x=0;x<200;x++){
			System.out.println("run--------------"+x);
		}

	}

}

class  ThreadDemo
{
	public static void main(String[] args)
	{
		Demo d=new Demo();//创建好了一个线程

		/*
			d.start()和d.run()的区别?
		*/
		d.start();//开启线程并执行该线程的run()方法。运行线程是随机的
		//d.run();//仅仅是对象调用方法。线程创建了,却并没有运行。运行的结果每次都是一样的。

		for(int x=0;x<200;x++){
			System.out.println("HelloWold----------"+x);
		}
	}
}

java用Thread方式创建多线程,布布扣,bubuko.com

时间: 2024-08-05 02:29:57

java用Thread方式创建多线程的相关文章

多线程介绍与threading模块应用以及使用Thread类创建多线程

1.多线程: 多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率.线程是在同一时间需要完成多项任务的时候实现的. 最简单的比喻多线程就像火车的每一节车厢,而进程则是火车.车厢离开火车是无法跑动的,同理火车也不可能只有一节车厢.多线程的出现就是为了提高效率.同时它的出现也带来了一些问题. 线程与进程的关系: 进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行.一个程序运行至少一个进程,一个进程里

继承的方式创建多线程&amp;Thread类的常用方法

创建多线程的一种方式:继承java.lang.Thread类 注意:1.一个线程只能执行一次start() 2.不能通过Thread实现类对象的 run()去启动一个线程 3.增加加一个线程,需要新创建一个线程的对象 Thread类的常用方法: 1.start():启动线程并执行相应的 run()方法 2.run():子线程要执行的代码放入run()方法中 3.currentThread():静态的,调取当前的线程 4.getName():获取此线程的名字 5.setName():设置此线程的名

Java线程Thread的创建

Java中线程的创建有两种方式: 1.  通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2.  通过实现Runnable接口,实例化Thread类 第一种方式:继承Thread类 package com.yyx.thread; /** * 通过继承Thread类创建线程 * yyx 2018年2月4日 */ public class CreateThreadByextends { public static void main(String[] args)

java 线程Thread 技术--创建线程的方式

在第一节中,对线程的创建我们通过看文档,得知线程的创建有两种方式进行实现,我们进行第一种方式的创建,通过继承Thread 类 ,并且重写它的run 方法,就可以进行线程的创建,所有的程序执行都放在了run 方法里:可以说run 方法里放入的是线程执行的程序:在执行线程的时候,需要调用线程的start 方法,就可以进行线程的启动: 总之就是:代码写在run 方法里面,但是线程的执行调用start 方法,start 方法会开启一个线程去执行run 方法: 方式-: public class Thre

继承Thread类的方式创建多线程

package MoreThread; public class MoreThread implements Runnable{ @Override public void run() { for(int i = 0;i < 20;i++ ) { System.out.println(); String name = Thread.currentThread().getName(); System.out.println((i+1)+".你好,来自线程"+name); } } }

java创建多线程(转载)

转载自:Java创建线程的两个方法 Java提供了线程类Thread来创建多线程的程序.其实,创建线程与创建普通的类的对象的操作是一样的,而线程就是Thread类或其子类的实例对象.每个Thread对象描述了一个单独的线程.要产生一个线程,有两种方法: ◆需要从Java.lang.Thread类派生一个新的线程类,重载它的run()方法: ◆实现Runnalbe接口,重载Runnalbe接口中的run()方法. 为什么Java要提供两种方法来创建线程呢?它们都有哪些区别?相比而言,哪一种方法更好

多线程01.newThread的方式创建线程

1.java应用程序的main函数是一个线程,是被jvm启动的时候调用,线程的名字叫main 2.实现一个线程,必须创建一个thread实例,override run方法,并且调用start方法. 3.在jvm启动后,实际 上有多个线程,但是至少有一个非守护线程. 4.当你调用一个线程start方法的时候,此时至少有两个线程,一个是调用你的线程,还有一个是执行run方法的线程 5.线程的生命周期分为new,runnable,running,block,termate. public class

java 线程 --- Thread,Runnable,Callable 基础学习

java 使用 Thread 类代表线程,所有现场对象都必须是 Thread 类或者其子类的实例.每个线程的作用是完成一定的任务,实际上就是执行一段程序流.java 使用线程执行体来代表这段程序流. 1.继承Thread 类创建线程 启动多线程的步骤如下: (1)定义Thread 类的子类,并重写该类的run() 方法,该run() 方法的方法体就代表类线程需要完成的任务.因此把run() 方法称为线程执行体. (2)创建 Thread 子类的实例,即创建线程对象. (3)调用线程的star()

Java 线程--继承java.lang.Thread类实现线程

现实生活中的很多事情是同时进行的,Java中为了模拟这种状态,引入了线程机制.先来看线程的基本概念. 线程是指进程中的一个执行场景,也就是执行流程,进程和线程的区别: 1.每个进程是一个应用程序,都有独立的内存空间. 2.同一个进程中的线程共享其进程中的内存和资源. (共享的内存是堆内存和方法区内存,栈内存不共享,每个线程有自己的栈内存) 我们还需要了解以下基本内容: 1.什么是进程? 一个进程对应一个应用程序.例如:在Windows操作系统启动word就表示启动了一个进程.在Java开发环境下