JAVA学习笔记整理八(多线程)

程序、进程、线程

1.    程序:计算机指令的集合,以文件的形式存储在磁盘上

2.    进程:是程序的一次动态执行过程,经历了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到最终消亡的过程

3.    线程:是进程中的一个单一的连续控制流程,多线程值一个进程在执行过程中可以产生多个线程,这些线程可以同时存在、同时运行


    多线程:线程通常是抢占式的而不需要时间片分配进程(分配给每个线程相等的CPU时间的进程)。抢占式调度模型就是许多线程处于可以运行状态(等待状态),但实际上只有一个线程在运行。该线程一直运行到它终止进入可运行状态(等待状态),或者另一个具有更高优先级的线程变成可运行状态。在后一种情况下,低优先级的线程被高优先级的线程抢占,高优先级的线程获得运行的机会。

    JAVA中所有线程都是同时启动的,哪个线程先抢到了CPU资源,哪个就先运行

    优点:多线程机制可以同时运行多个程序块,使程序运行的效率变得更高,克服一些传统程序语言无法解决的问题(例如有些包含循环的线程可能需要好一段时间来运算,此时便可以让另一个线程来做其他的处理)

线程的实现

1.    继承Thread类,并覆盖run()方法

public class ThreadDemo1 {
	public static void main(String[] args) {
		test1();
		System.out.println("主线程执行的方法");
	}

	private static void test1() {
		Thread thread1 = new MyThread1("线程A");
		thread1.start();//启动线程,执行run方法
		Thread thread2 = new MyThread1("线程B");
		thread2.start();
	}
}
class MyThread1 extends Thread{
private String name;
	public MyThread1(String name) {
		super();
		this.name = name;
	}

	@Override
	public void run() {
		System.out.println("这是线程" + name + "执行的方法");
	}
}

//其中 一种可能为(谁先抢到CPU则谁先执行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值