java先进先出调度算法
时间: 2023-12-31 08:24:30 浏览: 24
Java先进先出调度算法(First-Come, First-Served Scheduling Algorithm)是一种简单的进程调度算法,按照进程到达的顺序进行调度。当一个进程到达后,它会被放入就绪队列的末尾,然后按照队列的顺序依次执行。直到进程执行完毕或者发生阻塞,才会让出CPU资源给下一个进程。
以下是一个Java实现的先进先出调度算法的示例代码:
```java
import java.util.LinkedList;
import java.util.Queue;
class Process {
private String name;
private int burstTime;
public Process(String name, int burstTime) {
this.name = name;
this.burstTime = burstTime;
}
public String getName() {
return name;
}
public int getBurstTime() {
return burstTime;
}
}
public class FCFS {
public static void main(String[] args) {
Queue<Process> readyQueue = new LinkedList<>();
// 创建进程
Process p1 = new Process("P1", 10);
Process p2 = new Process("P2", 5);
Process p3 = new Process("P3", 8);
// 将进程加入就绪队列
readyQueue.add(p1);
readyQueue.add(p2);
readyQueue.add(p3);
// 执行进程
while (!readyQueue.isEmpty()) {
Process currentProcess = readyQueue.poll();
System.out.println("执行进程:" + currentProcess.getName());
// 模拟进程执行
try {
Thread.sleep(currentProcess.getBurstTime() * 1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("进程执行完毕:" + currentProcess.getName());
}
}
}
```
该示例中,我们创建了三个进程,并按照先后顺序加入就绪队列。然后通过循环依次执行队列中的进程,模拟进程执行的过程。