Java入职-01-多线程快速入门-mykt

大家好,欢迎来到小亮的笔记世界

简单介绍一下自己,95后小哥哥,高中毕业,泽宇教育优秀学员,Youcore框架学员,Angie价值变现研习社理财分群组长。现某机构学生,自学java,准备入职。

这是我的第一篇博客,打算用博客和OneNote沉淀自己的知识体系。做到自然重复。

学习本文的方法:朗读文字→手打或手写代码→复述→不看文章练习代码→熟能生巧→讲解给他人听→完成。

因为学习课程也该如此,基础永远都是要花大功夫钻研的。务必认真,专注和踏实。

好的,我们开始。

1.1 进程和线程的区别
打开Eclipse-新建Java Project
打开Eclipse-新建Java Project,如下图
在这里插入图片描述
随便新建一个类,打知识点,我的是Know类
在这里插入图片描述
在这里插入图片描述
1.什么是线程?什么是进程?什么是多线程?

 * 进程就是运行在电脑上的程序,每个程序都是一个进程,比如QQ,eclipse,微信,这些都是进程,有自己的执行路径,
 * 在电脑的任务管理器可以查看。
 * 线程就是这些进程,也就是这些程序的集合。 
 * CPU不停地切换进程和线程,所以我们看到的是多个软件同步运行。 多线程,就是提高运行效率的一种开发模型。

在这里插入图片描述
2.线程与进程的区别

 一句话理解:进程是所有线程的集合,每一个线程是进程中的一条执行路径。
 
 * 解释:每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。
 * 线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。
 * 也可以把它理解为代码运行的上下文。
 * 所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。

总结:进程是所有线程的集合,每一个线程是进程中的一条执行路径。

在这里插入图片描述

3.为什么要使用多线程?

 * 为了提高程序效率,提升用户体验,创造更大的价值。
 * 举例:迅雷多文件下载,微信群发,QQ群发,游戏中多模块加载等等

在这里插入图片描述

4.多线程的应用场景有哪些?

 * 基本上所有与用户相关的领域都要用到多线程。
 * 微信,QQ,千聊,迅雷文件下载,甚至是打字软件,word文档,爬虫,ajax,没有一个没用到的。

在这里插入图片描述

5.创建线程的方式(重点)
1.继承thread类,也就是重写run方法。

鼠标点到左边的Package Explorer Ctrl+N 新建class

在这里插入图片描述

初始状态如下

在这里插入图片描述

先建子线程,在用main方法主线程调用。写一个CreateThreadDemo1类

在这里插入图片描述
注意:
1.这个类继承Thread类,千万别写错了。
2.class前面是默认修饰符friendly
不然打run不会自动生成,而且还会报错

然后写一个30次的for循环
在这里插入图片描述
然后调用:
调用步骤 主类 main方法 回车 新建对象: 这里就copy类名快一些
CreateThreadDemo1 t1 = new CreateThreadDemo1();

然后启动线程,这里注意,不是调用run();,而是调用start();
在这里插入图片描述

下面写个for循环,标记主线程
在这里插入图片描述
总代码如下:

package com.itmayiedu;

 class CreateThreadDemo1 extends Thread{
	/**
	 * run方法就是线程需要执行的任务或者执行的代码
	 */
	public void run() {
		for (int i = 0; i < 30; i++) {
			System.out.println("线程run:i"+i);
		}
	}
}

public class ThreadDemo1 {
		public static void main(String[] args) {
			CreateThreadDemo1 t1 = new  CreateThreadDemo1();
			t1.run();
			for (int i = 0; i < 30; i++) {
				System.out.println("主线程main:i"+i);
			}
		}
}

然后我们运行看看

在这里插入图片描述

哦豁,写错了。用的是run(); 不是线程运行,改回来。

在这里插入图片描述

现在看到,主线程和线程run交替执行,对吧。这个就是多线程,异步执行。

ok,今晚先睡,明天更新。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值