sleep方法:
Thread.sleep(5) 单位是毫秒,意思是把当前线程休眠5毫秒.
public class Test {
public static void main(String[] args) {
Thread myThread = new Thread(new MyThread(),"myThread");
myThread.start();
for (int i = 0; i < 1000; i++) {
if (i % 2 == 0) {
// 主线程休眠5毫秒
try {
Thread.sleep(5);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println("test" + i);
}
}
}
class MyThread implements Runnable {
@Override
public void run() {
for (int i = 0; i <= 1000; i++) {
System.out.println(i);
}
}
}
yield 方法:
该方法是让出当前线程,让其他线程执行
public class Test {
public static void main(String[] args) {
MyThread myThread1 = new MyThread("t1");
MyThread myThread2 = new MyThread("t2");
myThread1.start();
myThread2.start();
}
}
class MyThread extends Thread {
public MyThread(String arg){
super(arg);
}
@Override
public void run() {
for (int i = 0; i <= 100; i++) {
System.out.println(getName()+":"+i);
if (i % 10 == 0) {
// 注意:一定是Thread.yield(), 不要直接调用yield()方法
// 线程让出一段时间,等到cpu执行该线程时在执行
Thread.yield();
}
}
}
}
分享到:
相关推荐
Java线程有五种基本状态:新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Terminated)。线程的状态会随着程序的运行而变化: 1. **新建**:当创建了一个新的线程对象后,该线程处于新建...
Java线程是并发编程的核心部分,它允许程序在同一时间执行多个独立的任务,从而提高系统效率和响应速度。本文将深入探讨Java线程的概念、生命周期、实现方式以及相关的同步机制。 首先,理解线程的基本概念至关重要...
Java线程是Java编程中的重要概念,特别是在多核处理器和并发处理中不可或缺。Java线程允许程序在同一时间执行多个不同的任务,从而提高了程序的效率和响应性。在燕山大学信息学院计算机系的课程中,李峰教授讲解了...
这是Java实现线程安全的一种基本手段。 ##### 使用synchronized修饰方法 当`synchronized`用来修饰实例方法时,该方法称为同步方法。同一对象上的所有同步方法在同一时刻只能被一个线程访问。例如: ```java ...
创建Java线程有两种方式:继承`Thread`类并重写`run()`方法,或者实现`Runnable`接口并提供`run()`方法。当线程对象被创建并调用`start()`方法后,线程进入可运行态,由Java的线程调度器决定何时执行`run()`方法。 ...
本文将深入探讨Java中的多线程操作方法,包括线程控制的基本方法、中断和睡眠以及相关示例。 首先,了解线程的基本状态至关重要。线程在运行过程中可能处于新建、可运行、运行、阻塞或死亡等状态。`isAlive()`方法...
Java线程是Java编程语言中的一个核心概念,它允许程序同时执行多个任务,极大地提高了程序的并发性和效率。本教程将深入探讨Java线程的使用,帮助开发者掌握这一关键技术。 一、线程基础 1. **线程的概念**:线程...
Java线程模块对于理解和实现多任务并行处理至关重要,尤其是在开发高效的、响应迅速的应用程序时。本节将深入探讨Java线程中的“秒表”概念,这是一种用于度量时间间隔的实用工具,常用于性能测试和调试。 首先,让...
本资源"JAVA线程学习(源代码)"提供了关于Java线程的源代码示例,帮助我们深入理解和实践线程的使用。 首先,我们要理解Java中的线程模型。Java线程由`java.lang.Thread`类或`java.util.concurrent.Executor`框架来...
首先,理解Java多线程的基本概念至关重要。Java通过Thread类和Runnable接口来支持多线程。创建一个新线程通常有两种方式:继承Thread类并重写run()方法,或者实现Runnable接口并提供run()方法。在run()方法中编写...
#### 一、Java线程基本概念 1. **如何编写与启动线程** - **方式一:继承Thread类** ```java class MyThread extends Thread { @Override public void run() { // 业务逻辑 } } new MyThread().start(); ...
Java提供了一些方法来控制线程状态,如`sleep()`使线程暂停执行一段时间,`join()`等待指定线程结束,`yield()`让当前线程暂停,让其他相同优先级的线程有机会执行,`interrupt()`用于中断线程。 同步是Java线程...
在Java中,线程的生命周期包含五个基本状态,分别是新建状态(New)、就绪状态(Runnable)、运行状态(Running)、阻塞状态(Blocked)和死亡状态(Dead)。了解这些状态对于掌握Java多线程编程至关重要。 新建...
4. **线程优先级与调度**:Java的`Thread`类提供了设置线程优先级的方法,如`setPriority(int priority)`,但实际线程调度依赖于操作系统的策略,优先级并不保证绝对的执行顺序。 5. **守护线程(Daemon)**:守护...
Java线程有五种基本状态:新建(New)、可运行(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Terminated)。这些状态之间的转换是通过调用特定的方法,如start()、sleep()、join()、wait()、notify()等...
Java线程是并发编程的重要组成部分,它允许程序中有多个执行流同时运行,提高了程序的效率和响应性。在Java中,线程的创建主要有两种方式:继承`Thread`类和实现`Runnable`接口。 1. 继承`Thread`类: 当一个类...
除了基本的线程创建,Java还提供了synchronized关键字用于线程同步,防止多个线程同时访问共享资源导致数据不一致。synchronized可以修饰方法或代码块,当一个线程正在执行synchronized代码时,其他线程必须等待。 ...
### Java线程使用教程知识点详解 #### 一、线程基础概述 - **定义与特点**:线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中...希望本教程能帮助读者更好地理解和掌握Java线程的使用方法。
创建Java线程主要有两种方式: 1. 继承Thread类:创建Thread的子类并重写run()方法,然后通过调用start()方法启动线程。 2. 实现Runnable接口:创建一个实现了Runnable接口的类,实现run()方法,然后将该类的实例...