• [遇见时光]java多线程中run和start方法


    run()方法是方法体,线程里要执行的内容;单独调用时按顺序执行(因为新建的线程还没开启);

    start()开启一个线程;举个形象的例子就是长跑开始时,每个运动员反应不一样,反应快的就先执行;

    Java例子:

     1 package test;
     2 
     3 public class RunAndStart {  
     4     public static void main(String[] args) {  
     5         Runner1 runner1 = new Runner1();  
     6         Runner2 runner2 = new Runner2();  
     7 //      Thread(Runnable target) 分配新的 Thread 对象。  
     8         Thread thread1 = new Thread(runner1);  
     9         Thread thread2 = new Thread(runner2);  
    10         thread1.start();  
    11         thread2.start();  
    12 //        thread1.run();  
    13 //        thread2.run();  
    14     }  
    15 }  
    16   
    17 class Runner1 implements Runnable { // 实现了Runnable接口,jdk就知道这个类是一个线程  
    18     public void run() {  
    19         for (int i = 0; i < 100; i++) {  
    20             System.out.println("进入Runner1运行状态——————————" + i);  
    21         }  
    22     }  
    23 }  
    24   
    25 class Runner2 implements Runnable { // 实现了Runnable接口,jdk就知道这个类是一个线程  
    26     public void run() {  
    27         for (int i = 0; i < 100; i++) {  
    28             System.out.println("进入Runner2运行状态==========" + i);  
    29         }  
    30     }  
    31 }  

    start()执行结果是可能线程1、2交替出现

    run()执行结果是先1执行完再执行2.

  • 相关阅读:
    Linux守护进程
    sequel pro无法连接mysql服务器
    socket编程之并发回射服务器2
    Unix的I/O模型
    nginx.conf laravel 配置
    phpstudy使用PHP+nginx配置Laravel
    nginx配置文件分开配置
    centos安装composer
    linux下 设置php的环境变量 php: command not found
    laravel 安装
  • 原文地址:https://www.cnblogs.com/yujianshiguang/p/5962096.html
Copyright © 2020-2023  润新知