返回顶部
首页 > 资讯 > 后端开发 > JAVA >java中如何让线程顺序执行
  • 376
分享到

java中如何让线程顺序执行

java教程java线程顺序执行 2020-07-30 22:07:21 376人浏览 绘本
摘要

下面由java入门程序栏目为大家介绍如何在java中让线程顺序执行,希望对大家有所帮助!我们需要完成这样一个应用场景:早上;2.测试人员、产品经理、开发人员陆续的来公司上班;3.产品经理规划新需求;4.开发人员开发新需求功能;5.测试人员测

下面由java入门程序栏目为大家介绍如何在java中让线程顺序执行,希望对大家有所帮助!

我们需要完成这样一个应用场景:

早上;2.测试人员、产品经理、开发人员陆续的来公司上班;3.产品经理规划新需求;4.开发人员开发新需求功能;5.测试人员测试新功能。

规划需求,开发需求新功能,测试新功能是一个有顺序的,我们把thread1看做产品经理,thread2看做开发人员,thread3看做测试人员。

使用线程的 join 方法

join():是Theard的方法,作用是调用线程需等待该join()线程执行完成后,才能继续用下运行。

应用场景:当一个线程必须等待另一个线程执行完毕才能执行时可以使用join方法。

实例如下:

package com.zhangsf.javabase.thread.order;

public class ThreadJoinDemo {
    public static void main(String[] args) {
        final Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("产品经理规划新需求");
            }
        });
        final Thread thread2 = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    thread1.join();
                    System.out.println("开发人员开发新需求功能");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        Thread thread3 = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    thread2.join();
                    System.out.println("测试人员测试新功能");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        System.out.println("早上:");
        System.out.println("测试人员来上班了...");
        thread3.start();
        System.out.println("产品经理来上班了...");
        thread1.start();
        System.out.println("开发人员来上班了...");
        thread2.start();
    }
}

运行结果:

fb6aebcb6069681ba68d01d30da3cf1.png

使用主线程的 join 方法

这里是在主线程中使用join()来实现对线程的阻塞。

package com.zhangsf.javabase.thread.order;

public class ThreadMainJoinDemo {
    public static void main(String[] args) throws Exception {
        final Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
              System.out.println("产品经理正在规划新需求...");
            }
        });
        final Thread thread2 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("开发人员开发新需求功能");
            }
        });
        final Thread thread3 = new Thread(new Runnable() {zzzz
            @Override
            public void run() {
                System.out.println("测试人员测试新功能");
            }
        });
        System.out.println("早上:");
        System.out.println("产品经理来上班了");
        System.out.println("测试人员来上班了");
        System.out.println("开发人员来上班了");
        thread1.start();
        //在父进程调用子进程的join()方法后,父进程需要等待子进程运行完再继续运行。
        System.out.println("开发人员和测试人员休息会...");
        thread1.join();
        System.out.println("产品经理新需求规划完成!");
        thread2.start();
        System.out.println("测试人员休息会...");
        thread2.join();
        thread3.start();
    }
}

运行结果:

d86c167ae59fdf7654e7515650e4aae.png

让线程顺序执行的方法还有很多,以后会为大家一一介绍。

--结束END--

本文标题: java中如何让线程顺序执行

本文链接: https://lsjlt.com/news/2523.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • java中如何让线程顺序执行
    下面由java入门程序栏目为大家介绍如何在java中让线程顺序执行,希望对大家有所帮助!我们需要完成这样一个应用场景:早上;2.测试人员、产品经理、开发人员陆续的来公司上班;3.产品经理规划新需求;4.开发人员开发新需求功能;5.测试人员测...
    99+
    2020-07-30
    java教程 java 线程 顺序执行
  • Java怎么让多线程按顺序执行
    本文小编为大家详细介绍“Java怎么让多线程按顺序执行”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java怎么让多线程按顺序执行”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在子线程中通过join()方法指定...
    99+
    2023-06-30
  • java如何实现多线程的顺序执行
    场景 编写一个程序,启动三个线程,三个线程的name分别是A,B,C;,每个线程将自己的ID值在屏幕上打印5遍,打印顺序是ABCABC... 使用 synchronized 实现 ...
    99+
    2024-04-02
  • Java让多线程按顺序执行的几种方法
    目录在子线程中通过join()方法指定顺序在主线程中通过join()方法指定顺序通过倒数计时器CountDownLatch实现通过创建单一化线程池newSingleThreadExe...
    99+
    2024-04-02
  • 在Java中实现让线程按照自己指定的顺序执行
    目录如何让线程按照自己指定的顺序执行认识Join利用Executors线程池线程的优先级及执行顺序优先级概述使用优先级如何让线程按照自己指定的顺序执行 我们在日常的多线程开发中,可能...
    99+
    2024-04-02
  • Java中怎么实现让线程按照自己指定的顺序执行
    这篇“Java中怎么实现让线程按照自己指定的顺序执行”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中怎么实现让线程按...
    99+
    2023-07-02
  • Java中保证线程顺序执行的操作代码
    只要了解过多线程,我们就知道线程开始的顺序跟执行的顺序是不一样的。如果只是创建三个线程然后执行,最后的执行顺序是不可预期的。这是因为在创建完线程之后,线程执行的开始时间取决于CPU何...
    99+
    2024-04-02
  • java怎么实现多线程的顺序执行
    这篇文章主要介绍java怎么实现多线程的顺序执行,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!场景编写一个程序,启动三个线程,三个线程的name分别是A,B,C;,每个线程将自己的ID值在屏幕上打印5遍,打印顺序是A...
    99+
    2023-06-15
  • C++中多线程的执行顺序如你预期吗
    目录一个简单的例子诡异的输出结果你看到的执行顺序不是真的执行顺序你看到的执行顺序还不是真正的执行顺序C++多线程内存模型一个简单的例子 先来看一个多线程的例子: 如图所示,我们将变...
    99+
    2022-11-13
    C++多线程执行顺序 C++多线程
  • 让线程顺序运行的11种方法
    一、让线程顺序运行的11种方法 1 方法说明 使用线程的join方法使用主线程的join方法使用线程的wait方法使用线程的线程池方法使用线程的Condition(条件变量)方法使用CountDown...
    99+
    2023-09-26
    java
  • 如何执行java程序
    首先我们在命令行运行Java程序需要借助jdk的环境依赖,打开jdk包,需要找到javac和java两个文件,如下图所示:接下来我们需要打开运行窗口,然后在运行窗口中输入cmd命令,如下图所示:在CMD命令行界面中我们输入cd命令进入到ja...
    99+
    2014-07-08
    java入门 执行 java 程序
  • jmeter顺序执行如何设置
    在JMeter中,您可以使用以下方法来设置测试计划的顺序执行: 在测试计划上使用逻辑控制器:您可以在测试计划中添加逻辑控制器(如...
    99+
    2023-10-26
    jmeter
  • PHP 多线程环境中的函数执行顺序是如何处理的?
    在 php 多线程环境中,函数执行顺序取决于:php 本身:默认单线程,但可以通过启用多线程创建多个并行线程执行任务。服务器环境:如 apache 服务器,每个请求创建新进程包含 php...
    99+
    2024-04-17
    php 多线程 apache
  • ReentrantLock条件变量使多个线程顺序执行
    目录一. 前言二. 解决方案三. 使用ReentrantLock 条件变量四. 后话一. 前言 近日一个学生在参加某公司校招面试时,遇到一个多个线程顺序执行的面试题,特意记录下来和大...
    99+
    2022-12-19
    ReentrantLock多个线程顺序执行 ReentrantLock条件变量
  • python子线程如何有序执行
    一、前情提要 最近在写一个项目,需要用到子线程,但是我们小学二年级就学过操作系统, 线程的执行是由系统的CPU调度算法所决定的,调度算法按照一系列的要求来从 就绪队列中 选择合适的线...
    99+
    2024-04-02
  • Java中try-catch-finally执行顺序是什么
    本文小编为大家详细介绍“Java中try-catch-finally执行顺序是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中try-catch-finally执行顺序是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入...
    99+
    2023-07-02
  • Java打包中,如何保证同步函数的执行顺序?
    在Java编程中,同步是一种非常重要的机制,它可以保证多线程程序的正确性。然而,在多线程程序中,如果同步函数的执行顺序不正确,可能会导致程序出现问题。因此,在Java打包中,如何保证同步函数的执行顺序是一个需要探讨的问题。 首先,我们需要...
    99+
    2023-09-29
    打包 同步 函数
  • 微信小程序中如实现按顺序同步执行
    这篇文章给大家分享的是有关微信小程序中如实现按顺序同步执行的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。小程序按顺序同步执行有如下两种方式:第一种方式:回调函数执行,后一个方法写到前一个的回调函数中从而实现顺序执...
    99+
    2023-06-14
  • Python如何控制函数执行顺序
    在Python中使用del关键字控制函数的执行顺序,具体方法如下:def foo():print ('in the foo')bar()def bar():print ('in the bar')foo()...
    99+
    2024-04-02
  • Java中try-catch-finally执行顺序你知道吗
    目录引言正文try块中有returncatch块中有returntry块和finally块中有returncatch块和finally块中有returntry块、catch块和fin...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作