基本线程机制
线程运行时,是当前系使用时间片机制为线程分配其占用的时间(一个线程运行一段时间再切换到其他线程,不能一直占着CPU)。每个任务都觉得一直占着cpu,但事实上cpu是划分时间片的。
一、定义任务
java中实现runnable,或继承Thread 类实现线程
public class LiftOff implements Runnable { protected int countDown = 10; // Default private static int taskCount = 0; private final int id = taskCount++;//id可以标是一个线程实例,每新增一个线程则加1 public LiftOff() { } public LiftOff(int countDown) { this.countDown = countDown; } public String status() { return "#" + id + "(" + (countDown > 0 ? countDown : "LiftOff!") + ") "; } @Override public void run() { while (countDown-- > 0) { System.out.print(status()); Thread.yield(); } } }
Thread.yield 用来暂时释放cpu,但不释放锁