java吧 关注:1,247,351贴子:12,725,730
  • 13回复贴,共1

编写一个程序,利用Java语言模拟操作系统进程调度管理

只看楼主收藏回复

package work2_3;
import java.util.PriorityQueue;
public class Process implements Comparable<Process> {
private String name;
private int priority;
public Process(String name,int priority){
this.name=name;
this.priority=priority;
}
public String toString(){
return "("+this.name+","+this.priority+")";
}
public int compareTo(Process p) {
// TODO Auto-generated method stub
return this.priority-p.priority;
}
}
class Process_ex {
public static void main(String args[]){
Process process[]={new Process("A",4),new Process("B",3),new Process("C",5),
new Process("D",4),new Process("E",10),new Process("F",1)
};
PriorityQueue<Process> que=new PriorityQueue<Process>();
System.out.print("入队进程:");
for(int i=0;i<process.length;i++){
que.enqueue(process[i]);
System.out.print(process[i]+"");
}
System.out.print("\n出队进程");
while(!que.isEmpty())
System.out.print(que.dequeue().toString()+"");
System.out.println();
}
}
只有书上给的这个了,enqueue还不停的报错,明明在PriorityQueue<Process>已经定义了


IP属地:湖北1楼2018-04-13 18:44回复
    再去搜一个LRU的例子就好了呀 重点是理解思想好吧


    2楼2018-04-13 18:47
    收起回复
      enqueue改成add dequeue改成remove


      3楼2018-04-13 19:50
      收起回复
        你是我同学吗?今天老师布置的作业就是编程实现进程调度


        IP属地:广东来自Android客户端4楼2018-04-13 21:25
        收起回复
          import java.util.PriorityQueue;
          public class Process implements Comparable<Process> {
          private String name;
          private int priority;
          public Process(String name, int priority) {
          this.name = name;
          this.priority = priority;
          }
          public String toString() {
          return "(" + this.name + "," + this.priority + ")";
          }
          public int compareTo(Process p) {
          // TODO Auto-generated method stub
          return this.priority - p.priority;
          }
          }
          class Process_ex {
          public static void main(String args[]) {
          Process process[] = {new Process("A", 4), new Process("B", 3), new Process("C", 5),
          new Process("D", 4), new Process("E", 10), new Process("F", 1)
          };
          PriorityQueue<Process> que = new PriorityQueue<Process>();
          System.out.print("入队进程:");
          for (int i = 0; i < process.length; i++) {
          que.add(process[i]);
          System.out.print(process[i] + "");
          }
          System.out.print("\n出队进程");
          Process p = null;
          while (!que.isEmpty())
          System.out.print(que.poll());
          System.out.println();
          }
          }


          IP属地:安徽5楼2018-04-13 23:08
          收起回复