【常用API】之Thread多线程

多线程(MultiThreading):
通过代码,在一个主进程中,创建更多的线程。
这些线程同时运行,多线程程序。
一个主进程运行的时候,产生了不止一个线程操作。


并行:
多个CPU实例或者多台电脑同时执行一段逻辑处理,【同时】。


并发:
通过CPU调度算法,让用户开上去同时执行,
实际上从CPU操作层面不是真正的同时。【CPU不是同时】
并发往往是在一个程序中,有公用的资源,那么针对这个公用的资源
就会产生拼抢,
我们会利用 TPS或者QPS 来反应这个系统的处理能力。

 

多线程实例:

 1 package com.xzm.线程;
 2 
 3 //应用程序的一组命令单元
 4 public class _02_Thread多线程 {
 5 
 6     //主函数:
 7     //    程序运行会得到一个进程,主函数就是系统默认的那个主线程
 8     public static void main(String[] args) {
 9         
10         //第一步:实例化得到多个独立的线程对象
11         //            利用多态实现,也可以独立创建类对象
12         Thread t1 = new Thread_01();
13         Thread t2 = new Thread_02();
14         Thread t3 = new Thread_03();
15 
16         //第二步:调度运行
17         //调用父类中的start方法,独立运行线程
18         //这时,三个线程会同时运行
19         //start会自动开辟独立运行的操作,同时调用run方法
20         t1.start();
21         t2.start();
22         t3.start();
23         
24         
25         
26     }
27 
28 }
29 
30 //===============================================
31 //Thread单线程实现:
32 //1、定义线程类,继承 Thread父类
33 //2、重写 void run() 方法
34 //3、主线程创建子线程对象
35 //4、主线程开启子线程 调用start()方法
36 
37 // 【继承于线程类,当前类也是线程】
38 
39 //线程一
40 class Thread_01 extends Thread{    
41     @Override
42     public void run() {
43         for(int i=1; i<=5; i++) {
44             System.out.println("t1->"+i);
45         }
46     }    
47 }
48 
49 //线程二
50 class Thread_02 extends Thread{    
51     @Override
52     public void run() {
53         for(int i=1; i<=5; i++) {
54             System.out.println("t2-->"+i);
55         }
56     }    
57 }
58 
59 //线程三
60 class Thread_03 extends Thread{    
61     @Override
62     public void run() {
63         for(int i=1; i<=5; i++) {
64             System.out.println("t3--->"+i);
65         }
66     }    
67 }

 

posted @ 2020-12-11 01:12  Mr.chris  阅读(159)  评论(0编辑  收藏  举报