Лабораторная работа №3
Пример для freepascal:
type
TTask=function (maxtime:longint): boolean of object; // отдельная задача - метод класса
или
type
TTask=function (maxtime:longint): boolean; // отдельная задача - глобальная функция
... на выбор студента
type
TRoundRobin=class
private
{внутренние поля и методы}
public
constructor Create();
function Run(maxtime:longint):boolean;
// запускает планировшик,
// maxtime - максимальное время работы
procedure add(task:TTask);
// добавляет новую задачу
procedure delete(task:TTask);
// удаляет задачу
property tasks[index:integer]:TTask read getTask;
// позволяет получить доступ к задачам по индексу
property countTasks:integer read getCountTask;
// позволяет получить количество задач
property workTasks[index:integer]:TTask read getWorkTask;
// позволяет получить доступ к работающим задачам по индексу
property countWorkTasks:integer read getCountWorkTask;
// позволяет получить количество работающих задач
end;
Проверить работоспособность экземпляра класса планировщика, воспользовавшись решением предыдущей
лабораторной работы.