⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcblist.h

📁 进程管理 用链表实现的 有三种算法实现的
💻 H
字号:
#if !defined(AFX_PCBLIST_H__A072A753_48BF_43AA_9435_0AE09053C2C9__INCLUDED_)
#define AFX_PCBLIST_H__A072A753_48BF_43AA_9435_0AE09053C2C9__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "PCB.h"
class PCBList  
{
public:
	int len;//该进程链的进程个数
	PCB *headPCB;//该进程链的头进程
	PCB *tailPCB;//该进程链的尾进程
public:
	PCBList();
	virtual ~PCBList();
	void PrintTitle();
	bool IsEmpty();
	bool IsOnlyOne();
	bool InsertPCB(PCB *pcb);
	void DeletePCB(PCB *process);
	void BackPCBList();
	int GetShortSubmitTime();
	PCB* GetReadyPCB(int &curTime, PCBList *readyPCBList);
	PCB* GetMostPriorityPCB();
	void Print();
private:
	bool InsertPCB(PCB *tempPCB, PCB *pcb);
	bool InsertHeadPCB(PCB *pcb);
	bool InsertBeforeHead(PCB *pcb);
	bool InsertAfterHead(PCB *pcb);
	bool InsertBeforeTail(PCB *pcb);
	bool InsertAfterTail(PCB *pcb);

};
#endif // !defined(AFX_PCBLIST_H__A072A753_48BF_43AA_9435_0AE09053C2C9__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -