`
shawnccx
  • 浏览: 166816 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

java join()结束线程

阅读更多
public class ThreadTest implements Runnable {
public static int a = 0;

public void run() {
for (int k = 0; k < 5; k++) {
a = a + 1;
}
}

public static void main(String[] args) throws Exception {
Runnable r = new ThreadTest();
Thread t = new Thread(r);
t.start();
t.join();  //主要用于等待t线程运行结束,若无此句,main则会执行完毕,导致结果不可预测
System.out.println(a);
}
}
分享到:
评论

相关推荐

    Java多线程机制(讲述java里面与多线程有关的函数)

    线程联合(Join)是让一个线程等待另一个线程完成后再继续执行,通过调用`join()`方法实现。 9.11 守护线程: 守护线程(Daemon)是一种不阻止程序退出的线程,如垃圾收集器就是守护线程。当所有非守护线程结束时,...

    Java线程中wait,await,sleep,yield,join用法总结.pdf

    以上就是对Java线程中wait、await、sleep、yield、join用法的总结。这些方法在实际开发中,对于控制多线程运行的时序和协调非常关键。理解这些方法的正确使用方式是掌握Java并发编程的基础。同时,使用时需特别注意...

    Java多线程知识点总结

    此外,sleep方法可以使线程进入阻塞状态一段时间,而join方法则允许一个线程等待另一个线程完成其任务。 了解线程池的概念也是Java多线程编程中的一个重要知识点。线程池是一种多线程处理形式,它将线程和任务的...

    java多线程Demo

    当所有非守护线程结束时,即使还有守护线程在运行,JVM也会退出。我们可以使用`setDaemon(true)`方法将线程设置为守护线程。 6. 线程优先级: Java线程有10个优先级(MIN_PRIORITY, NORM_PRIORITY, MAX_PRIORITY)...

    java多线程经典案例

    阻塞状态通常发生在线程等待I/O操作完成、调用sleep()方法、等待锁释放或者调用join()方法等待其他线程结束时。 在`threadTest`这个案例中,我们可能会看到如何使用这些概念来创建实际的应用场景。例如,一个典型的...

    java多线程的讲解和实战

    - `join()`方法:让当前线程等待另一个线程完成其执行。 4. **线程优先级与调度**:Java的`Thread`类提供了设置线程优先级的方法,如`setPriority(int priority)`,但实际线程调度依赖于操作系统的策略,优先级并...

    JAVA-多线程 所有文件

    10. **Join方法**:`join()`方法使当前线程等待指定线程结束后再继续执行,常用于线程间的协作。 11. **线程中断**:通过`interrupt()`方法可以中断一个线程,但需要注意中断只是个标志,线程可能需要检查并响应...

    Java线程之join_动力节点Java学院整理

    Java线程中的`join()`方法是一个非常重要的同步工具,它允许一个线程(通常为主线程)等待另一个线程(子线程)执行完成后再继续执行。`join()`方法定义在`java.lang.Thread`类中,它使得多线程间的协作更加有序。 ...

    Java的多线程-线程间的通信.doc

    - `join()`方法允许当前线程等待指定线程结束。调用`thread.join()`会使当前线程等待thread线程执行完毕后再继续执行。 5. **Lock接口和Condition接口**: - Java 5引入了Lock接口和Condition接口,作为...

    java多线程例子

    在 Java 中,线程可以使用 join() 方法来等待其他线程的结束。join() 方法可以使当前线程等待指定的线程结束后继续执行。 ```java public class ThreadDemo { public static void main(String[] args) { Thread t...

    Java多线程--等待所有子线程执行完的五种方法.docx

    `Thread.join()`方法允许主线程等待特定线程结束。例如,如果有多个子线程,我们可以在每个子线程执行`join()`,这样主线程会依次等待每个子线程完成。例如: ```java Thread thread1 = new Thread(...); Thread ...

    Java多线程编程总结

    - 守护线程是在JVM中为其他线程提供服务的线程,当所有非守护线程结束时,JVM也会退出。 #### 八、Java线程:线程的同步-同步方法与同步块 1. **同步方法** - `synchronized` 关键字可用于修饰方法,确保同一...

    java多线程示例

    5. 等待/睡眠(Waiting/Timed Waiting):线程等待其他事件发生,如wait()、sleep()或join()。 6. 结束(Terminated):线程执行完毕或被中断。 四、线程安全问题 1. 线程不安全的数据访问:共享变量可能引发数据不...

    java 多线程.ppt,多线程

    join()方法用于等待特定线程结束。在一个线程调用另一个线程的join()方法后,调用线程会挂起,直到被join的线程执行完毕才会继续。 7. sleep()方法: sleep()方法使当前线程暂停指定的时间,释放CPU执行权,但...

    JAVA多线程学习内容

    线程可以通过sleep()方法进入阻塞状态,通过join()方法让主线程等待子线程完成,通过wait()和notify()或notifyAll()方法进行线程间的同步与通信。 Java提供了多种线程控制机制,如synchronized关键字用于实现互斥...

    浅谈java线程join方法使用方法

    在Java中,线程join方法的作用是使当前线程等待另一个线程的结束,然后再继续执行当前线程的任务。 在Java中,线程join方法可以通过两种方式来实现,一种是使用Thread类的join方法,另一种是使用Thread类的wait和...

    java+多线程+同步详解源码整理

    Java的`Thread`类提供了控制线程的方法,如`start()`启动线程,`join()`等待线程结束,`sleep()`使线程暂停执行等。 3. **线程同步** 在多线程环境中,数据共享可能导致数据不一致,为了解决这个问题,Java提供了...

    Java语言多线程编程讲义

    本文对Java语言的多线程编程进行了详细的讲解,涵盖了Java的线程机制、线程的创建、执行、结束、优先级、状态及状态间的转换、共享访问与线程同步、wait和notify在线程间的交互、Thread类的其他重要方法等方面的内容...

    JAVA 线程中启动线程

    - **join()**:使当前线程等待指定线程结束后再继续执行。 - **yield()**:让当前线程暂停,给其他可运行线程一个执行机会,但不保证一定能切换。 - **interrupt()**:中断线程,标记线程的中断状态,对于阻塞...

    【IT十八掌徐培成】Java基础第08天-02.多线程-join-daemon-同步.zip

    在Java中,`join()`、`daemon`线程以及同步机制是多线程编程中的重要概念,对于理解和编写高效的并发代码至关重要。 首先,我们来讨论`join()`方法。在多线程环境中,有时候我们需要确保一个线程在执行完它的任务后...

Global site tag (gtag.js) - Google Analytics