java thread 多线程_java用Thread方式创建多线程
发布日期:2021-06-24 16:13:14 浏览次数:3 分类:技术文章

本文共 1016 字,大约阅读时间需要 3 分钟。

进程:一个正在执行的程序,每一个进程都有一个执行顺序,该

顺序是一个执行路径,或者叫一个控制单元。

线程:进程中一个独立的控制单元。线程控制着进程的执行。

一个进程中至少有一个线程。

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);

}

}

}

转载地址:https://blog.csdn.net/weixin_33744799/article/details/114062525 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:微信红包接口 java_【java微信开发】红包接口调用
下一篇:java 判断客户端_javaweb服务端判断客户端使用的是手机还是电脑访问

发表评论

最新留言

不错!
[***.144.177.141]2024年04月07日 16时42分27秒