public class ThreadTest {
private static final CountDownLatch ctl = new CountDownLatch(10);
public static void main(String[] args) throws Exception{
System.out.println("主线程执行前:"+Thread.currentThread().getName());
test();
ctl.await(2, TimeUnit.SECONDS);//主线程最多等待2秒,不管子线程有没执行完(达到join的效果,阻塞)
System.out.println("主线程执行后:"+Thread.currentThread().getName());
}
static void test(){
try{
for(int i=1;i<=10;i++){
//Thread.sleep(1000);
new Thread(){
public void run(){
try {
Thread.sleep(1200);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("子线程正在执行:"+Thread.currentThread().getName());
ctl.countDown();
}
}.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
分享到:
相关推荐
Java是世界上最流行的编程语言之一,尤其在企业级应用开发中占据主导地位。多线程是Java中的核心特性,它使得程序能够同时...多线程-join-daemon-同步.avi"的视频教程,你可以深入学习这些概念,并通过实例加深理解。
在Java编程中,多线程是并发编程的重要组成部分,它允许程序同时执行多个任务,从而提高了系统的效率和响应性。然而,在某些场景下,我们可能需要控制线程的执行顺序,确保它们按照特定的顺序交替运行,这在并发编程...
尝试在每个子线程的开始使用`t.join()`方法,虽然可以强制主线程等待子线程的完成,但这会导致线程顺序执行,失去并行处理的优势,违背了使用多线程的目的。 **3. 自定义线程类实现并发控制** 为了解决上述问题,...
在Java多线程编程中,有时我们需要确保所有子线程执行完毕后再进行后续操作,例如在并发测试、数据聚合或资源清理等场景。本篇文章将详细介绍五种在Java中等待所有子线程执行完的方法。 ### 方法一:使用`sleep`...
CountDownLatch与thread.join()的区别
由于提供的文件内容大部分与Java多线程编程核心技术并无直接关联,而是关于电子书资源的联系方式和说明,因此不能直接从这部分内容中生成关于Java多线程的知识点。但考虑到描述中提到了电子书的标题以及它涉及的主题...
- `CountDownLatch`:用于多线程同步,计数器减至零后所有线程继续执行。 - `CyclicBarrier`:多线程到达屏障后一起继续,可重用。 - `Semaphore`:信号量,用于限制并发访问的线程数量。 7. **线程设计模式**:...
Java多线程详解 在Java编程中,多线程是一种重要的技术,它使得程序能够同时执行多个任务,提高系统的效率和响应性。本教程将详细讲解Java中的多线程概念,包括线程的创建、状态、同步以及高级主题,旨在帮助初学者...
Java多线程是Java编程中的核心概念,它允许程序同时执行多个任务,提高了软件的效率和响应性。在Java中,多线程的实现主要有两种方式:通过继承Thread类和实现Runnable接口。这篇资料深入探讨了Java多线程的相关知识...
### 多线程机制 #### 一、线程与进程的区别及适用方向 - **线程**:线程是程序执行中的最小单元,是进程的一部分。一个进程可以包含多个线程,这些线程共享相同的内存空间和系统资源,使得线程间的通信更加高效。 ...
### Java多线程编程总结 #### 一、Java线程:概念与原理 1. **操作系统中线程和进程的概念** - 当前的操作系统通常为多任务操作系统,多线程是实现多任务的一种手段。 - **进程**:指内存中运行的应用程序,每个...
Java多线程是Java编程中的重要组成部分,它允许程序同时执行多个任务,提高了程序的效率和响应...以上就是Java多线程使用教程的一些关键知识点,通过理解和掌握这些内容,开发者可以更好地编写高效、安全的多线程程序。
`多线程.docx`可能是关于Java多线程的深入讲解,涵盖线程安全、线程同步、锁的使用等方面。 总之,理解并熟练掌握Java多线程和锁机制对于编写高效、健壮的并发代码至关重要。通过实践和案例学习,可以更好地理解...
《多线程编程实战指南-核心篇》是针对Java开发者深入理解并掌握多线程编程的一本实战性书籍。在当今的并发计算环境中,多线程技术是必不可少的知识点,它能够有效地利用多核处理器资源,提高程序的执行效率。本书以...
### Java多线程编程总结 #### 一、Java多线程概述 Java多线程是Java编程语言中不可或缺的一部分,它允许程序同时处理多个任务,从而显著提高应用程序的性能和响应速度。Java5之前的版本虽然支持多线程,但在语言...
Java互联网架构多线程并发编程原理及实战 视频教程 下载 1-1 课程简介.mp4 1-2 什么是并发编程.mp4 1-3 并发编程的挑战之频繁的上下文切换.mp4 1-4 并发编程的挑战之死锁.mp4 1-5 并发编程的挑战之线程安全....
Java互联网架构多线程并发编程原理及实战 视频教程 下载 1-1 课程简介.mp4 1-2 什么是并发编程.mp4 1-3 并发编程的挑战之频繁的上下文切换.mp4 1-4 并发编程的挑战之死锁.mp4 1-5 并发编程的挑战之线程安全....
Java互联网架构多线程并发编程原理及实战 视频教程 下载 1-1 课程简介.mp4 1-2 什么是并发编程.mp4 1-3 并发编程的挑战之频繁的上下文切换.mp4 1-4 并发编程的挑战之死锁.mp4 1-5 并发编程的挑战之线程安全....
Java互联网架构多线程并发编程原理及实战 视频教程 下载 1-1 课程简介.mp4 1-2 什么是并发编程.mp4 1-3 并发编程的挑战之频繁的上下文切换.mp4 1-4 并发编程的挑战之死锁.mp4 1-5 并发编程的挑战之线程安全....
Java互联网架构多线程并发编程原理及实战 视频教程 下载 1-1 课程简介.mp4 1-2 什么是并发编程.mp4 1-3 并发编程的挑战之频繁的上下文切换.mp4 1-4 并发编程的挑战之死锁.mp4 1-5 并发编程的挑战之线程安全....