나는 논리적으로 작업 풀 (각 작업에는 작동하는 개별 시간 슬라이스가 있음)을 생성하는 알고리즘을 정의하려고합니다. 및 시스템 시계없이 관리 .시스템 시계를 사용하지 않고 작업 관리
내가 직면 한 문제는 취한 각 접근 방식을 통해 높은 시간 조각이있는 작업이 굶어 죽었다는 것입니다.
내가 시도한 것은 한 쌍의 작업/(int) "시간"이 포함 된 작업 벡터를 만드는 것입니다. 가장 낮은 "시간"을 가진 벡터를 먼저 정렬하고 & 다음 0으로 각 작업을 반복하고 실행했습니다. 전체 벡터를 반복하면서 각 작업의 "시간"을 줄였습니다.
"문제"에 대한 더 나은 접근 방법이 있습니까? 내 접근 방식으로, 확실히 시작됩니다.
"시간"값의 정의는 무엇입니까? 처음에는 각 작업에 대해 어떻게 설정됩니까? 늘릴 수 있습니까? –
더 자세히 설명하겠습니다. Vector = {Task1 | int time = 12, Task2 | int time = 10} 그래서 Task2가 먼저 실행되고 2 번 더 "틱"Task1이 실행됩니다. 인수를 위해서 나는 시스템 시간 (시계)을 우선 순위에 사용할 수 없다. – Erez
더 정확한 defenition : "시스템 시간 (시계)을 사용하는 옵션없이 작업을 관리하기위한 시스템 설계" – Erez