Java 多线程 01
2021-02-14 13:19
标签:cpu main string 代码 执行 str system ring 另一个 * A:什么是线程 * B:多线程的应用场景 * 并行就是两个任务同时运行,就是甲任务进行的同时,乙任务也同时进行(需要多核CPU) * 并发是指两个任务都请求运行,而处理器只能接收一个任务,于是就安排轮流执行这两个任务,由于时间间隔较短,因此用户感觉两个任务同时运行 * 比如:我和两个网友聊天,左手操作一个电脑,右手操作另一个电脑,就叫并行 * A:Java程序运行原理 * B:JVM的启动 * A:继承Thread Java 多线程 01 标签:cpu main string 代码 执行 str system ring 另一个 原文地址:https://www.cnblogs.com/zhaochuming/p/12722082.html多线程· Runnable 和 Thread
多线程的引入
* 线程是程序执行的一条路径,一个进程中可以包含多条线程
* 多线程并发执行可以提高程序的效率,可以同时完成多项工作
* 红蜘蛛同时共享屏幕给多个电脑
* 迅雷开启多条线程一起下载
* QQ同时和多个人一起视频
* 服务器同时处理多个客户端请求多线程并行和并发的区别
* 如果用一台电脑先给一个人发消息,再用这台电脑给另一个人发消息,这就叫并发Java程序运行的原理和JVM的启动
* Java命令会启动Java虚拟机,启动JVM就等于启动了一个应用程序,也就是启动了一个进程,
* 该进程会自动启动一个“主线程”,然后主线程区调用某个类的main方法
* JVM的启动至少启动了垃圾线程和主线程,所以是多线程的package com.heima.thread;
public class Demo1_Thread {
// 证明JVM是多线程的
public static void main(String[] args) {
for (int i = 0; i ) {
new Demo();
}
for (int i = 0; i ) {
System.out.println("我是主线程的执行代码");
}
}
}
class Demo { // 垃圾清理线程
@Override
public void finalize() throws Throwable {
System.out.println("垃圾被清扫了");
}
}
Thread 实现多线程
* 定义类继承Thread
* 重写 run()方法
* 把新线程要做的事写在 run()方法中
* 创建线程对象
* 开启新线程,内部自动会执行 run()方法
上一篇:安装cmake,make install 出错:/lib64/libstdc++.so.6:version ' GLBCXX_3.4.26' not found
下一篇:Python命名规范