Я должен сделать планировщик Round Robin для класса.Первоначально я создал 3 List<int>
списки для представления идентификаторов процессов, времени их поступления и времени обработки.Я отсортировал их по времени прибытия.Процессам присваивается фиксированный квант (я жестко закодировал это как 4), и теперь я хочу применить к ним RR и отобразить порядок последовательности каждого процесса и их оставшееся время в textBox
на форме.
Я нашел один подход здесь, но он в java: https://stackoverflow.com/questions/7544452/round-robin-cpu-scheduling-java-threads
Я попытался преобразовать мои три списка в списки объектов, как показано в ссылке, но в основном, пока мне удалось создатьсписок объектов, которые представляют процессы.В каждом объекте хранятся processname
, arrivaltime
, bursttime
.Это представлено классом с именем PCB
.
. Теперь я создал список, в который нужно добавить ряд процессов:
public List<pcb> list = new List<pcb>(); // In place of ArrayList used in the
// example code in the link.
//For loop runs in which above 3 parameters are assigned values & then they're
// added to list:
PCB pcb = new PCB(processname1, arrivaltime1, bursttime1);
list.Add(pcb);
Но как мне искать каждое значение?списка, чтобы найти предмет и манипулировать им?Скажем, я хочу получить доступ к bursttime
из processname="P1"
и уменьшить его на 4?
Это неправильная структура данных для него в C #?