コード例 #1
0
 private ServerParameters GetServerParameters(ESchedulerType schedulerType, string fileName)
 {
     return(new ServerParameters
     {
         SchedulerType = schedulerType,
         TasksFilePath = GetFileWithPath(fileName)
     });
 }
コード例 #2
0
        public static ITaskScheduler GetTaskScheduler(ESchedulerType type)
        {
            switch (type)
            {
            case ESchedulerType.FCFS: return(new FCFSScheduler());

            case ESchedulerType.RoundRobin: return(new RoundRobinScheduler());

            case ESchedulerType.DoubleQueue: return(new DoubleQueueScheduler());

            default: throw new Exception($"Unknown schedulerType: {type}");
            }
        }
コード例 #3
0
        private InputParamters GetInputParamters(string filePath, ESchedulerType schedulerType)
        {
            var splitted = filePath.Split('.')[0].Split('_');

            return(new InputParamters
            {
                OriginalFileName = filePath,
                SchedulerType = schedulerType,
                Load = Convert.ToDecimal(splitted[0]),
                TaskLength = Convert.ToInt32(splitted[1]),
                Delay = Convert.ToInt32(splitted[2]),
                Cov = Convert.ToInt32(splitted[3]),
            });
        }
コード例 #4
0
 private ITaskScheduler GetTaskScheduler(ESchedulerType type) => SchedulerManager.GetTaskScheduler(type);