zoukankan      html  css  js  c++  java
  • 多线程

    含义:程序里同时执行多个任务并加以控制就是多线程的含义。能充分运用cpu内存等硬件设备,提高程序运行效率。

    实现方法:继承Thread;实现Runable

     1 package cap1;
     2 
     3 public class Eat extends Thread{
     4 
     5     @Override
     6     public void run() {
     7         for(int i=0;i<=10;i++){
     8             try {
     9                 Thread.sleep(1000);
    10                 System.out.println("吃东西");
    11             } catch (InterruptedException e) {
    12                 // TODO Auto-generated catch block
    13                 e.printStackTrace();
    14             }
    15         }
    16     }
    17     
    18 
    19 }
    20 ——————————————————————————————————————————
    21 package cap1;
    22 
    23 public class Music extends Thread{
    24 
    25     @Override
    26     public void run() {
    27     for(int i=0;i<=10;i++){
    28         try {
    29             Thread.sleep(1000);
    30             System.out.println("听音乐");
    31         } catch (InterruptedException e) {
    32             // TODO Auto-generated catch block
    33             e.printStackTrace();
    34         }
    35     }
    36     }
    37     
    38 
    39 }
    40 ——————————————————————————————————————————
    41 package cap1;
    42 
    43 public class mainMethod {
    44     public static void main(String[] args) {
    45         Music musicThread=new Music();
    46         Eat eatMusic=new Eat();
    47         musicThread.start();
    48         eatMusic.start();
    49     }
    50 }
    实例一
     1 package cap2;
     2 
     3 public class Thread1 extends Thread{
     4     
     5     private int baozi=1;
     6     private String threadName;
     7     
     8     public Thread1(String threadName){
     9         super();
    10         this.threadName=threadName;
    11     }
    12 
    13     @Override
    14     public void run() {
    15     while(baozi<=10){
    16         System.out.println(threadName+"吃第"+baozi+"个包子");
    17         baozi++;
    18     }
    19     }
    20     public static void main(String[] args) {
    21         Thread1 t1=new Thread1("张三线程");
    22         Thread1 t2=new Thread1("李四线程");
    23         t1.start();
    24         t2.start();
    25     }
    26     
    27 }
    实例二
     1 package cap3;
     2 
     3 import cap2.Thread1;
     4 
     5 public class Thread2 implements Runnable{
     6 
     7     private int baozi=1;
     8     private String threadName;
     9     
    10     public Thread2(String threadName){
    11         super();
    12         this.threadName=threadName;
    13     }
    14 
    15     @Override
    16     public void run() {
    17     while(baozi<=10){
    18         System.out.println(threadName+"吃第"+baozi+"个包子");
    19         baozi++;
    20     }
    21     }
    22     public static void main(String[] args) {
    23         Thread1 t1=new Thread1("张三线程");
    24         Thread1 t2=new Thread1("李四线程");
    25         
    26         Thread t11=new Thread(t1);
    27         Thread t12=new Thread(t2);
    28         t11.start();
    29         t12.start();
    30     }
    31     
    32 }
    实例三
     1 package cap3;
     2 
     3 import cap2.Thread1;
     4 /*
     5  * runable可以实现数据共享,一个人干三个人的事情
     6  */
     7 
     8 public class Thread3 implements Runnable{
     9 
    10     private int baozi=1;
    11     private String threadName;
    12     
    13     public Thread3(String threadName){
    14         super();
    15         this.threadName=threadName;
    16     }
    17 
    18     @Override
    19     public synchronized void run() {
    20     while(baozi<=10){
    21         System.out.println(threadName+"吃第"+baozi+"个包子");
    22         baozi++;
    23     }
    24     }
    25     public static void main(String[] args) {
    26         Thread3 t1=new Thread3("超级线程");
    27         
    28         
    29         Thread t11=new Thread(t1);
    30         Thread t12=new Thread(t1);
    31         Thread t13=new Thread(t1);
    32         t11.start();
    33         t12.start();
    34         t13.start();
    35     }
    36     
    37 }
    实例四
  • 相关阅读:
    8.14-T1村通网(pupil)
    8.10-Day2T3 镇守府
    8.10-Day2T2 吃喝大法好
    8.10-Day2T1最小值
    8.10-DayT3游走(wander)
    8.10-Day1T2圈(circle)
    8.10-Day1T1-数字(number)
    bzoj2462: [BeiJing2011]矩阵模板
    8.7-Day1T1
    k8s高可用部署后续:SLB
  • 原文地址:https://www.cnblogs.com/yanweichen/p/8685803.html
Copyright © 2011-2022 走看看