Esempio n. 1
0
 public TaskWithEnumerationsInFields(IObsoleteTask a, IObsoleteTask b, SomeTask c)
 {
     A = new [] { a };
     B = new[] { b };
     C = new List <SomeTask> {
         c
     };
 }
Esempio n. 2
0
        static void Main(string[] args)
        {
            SomeTask func = TestBlockSort;

            TaskLoop(func, "Задание 1", "Блочная сортировка целочисленного массива");

            func = TestMergeSort;
            TaskLoop(func, "Задание 2", "Сортировка целочисленного массива слиянием");

            Console.WriteLine("Оценка количества сравнений и пересылок при сортировке");
            TestSort();
        }
        private void AssertThatCreatedObjectReturnsDependencies(Func<ITask,ITask,SomeTask, ITask> createObject)
        {
            var finder = new TaskDependencyFinder();

            var a = new Mock<ITask>().Object;
            var b = new Mock<ITask>().Object;
            var c = new SomeTask();

            var task = createObject(a, b, c);

            IEnumerable<ITask> deps = finder.GetDependenciesFor(task);

            Assert.That(deps, Is.EquivalentTo(new [] {a, b, c}));
        }
Esempio n. 4
0
        /// <summary>
        /// Функция для многократного выполнения подпрограмм
        /// </summary>
        /// <param name="func">Подпрограмма для выполнения</param>
        /// <param name="name">Заголовок для вывода в консоль</param>
        /// <param name="definition">Описание для вывода в консоль</param>
        static void TaskLoop(SomeTask func, string name, string definition)
        {
            string input = "";

            Console.WriteLine(String.Join("\n", "", name, definition));
            do
            {
                func();
                Console.WriteLine(
                    $"\nВы хотите продолжить выполнение \"{name}\"?"
                    + "\nДля выхода введите N");
                input = Console.ReadLine();
            } while (input != "N");
        }
Esempio n. 5
0
        static void TaskLoop(SomeTask func, string name, string definition)
        //Функция для многократного выполнения заданий
        {
            string input = "";

            Console.WriteLine("\n" + name + "\n" + definition);
            do
            {
                func();
                Console.WriteLine(
                    $"\nВы хотите продолжить выполнение \"{name}\"?"
                    + "\nДля выхода введите N");
                input = Console.ReadLine();
            } while (input != "N");
        }
Esempio n. 6
0
        private static async void ProcessTask(SomeTask t, dynamic caller)
        {
            var r = new Random();
            await Task.Delay(r.Next(15000));

            t.Operations.Add(
                "Long running operation completed at "
                + DateTime.Now.ToLongTimeString());

            // Notify caller
            caller.onEvent(
                new TaskUpdated {
                AffectedTask = t
            });
        }
Esempio n. 7
0
        static void Main(string[] args)
        {
            SomeTask func = EdPracTask1;

            TaskLoop(func, "Задание 1", "Вхождение точки в область");

            func = EdPracTask2;
            TaskLoop(func, "Задание 2", "Приближенное вычисление корня");

            func = EdPracTask3;
            TaskLoop(func, "Задание 3", "Работа с матрицами");

            func = EdPracTask4;
            TaskLoop(func, "Задание 4", "Рекурсия");
        }
Esempio n. 8
0
        private void AssertThatCreatedObjectReturnsDependencies(Func<ITask,ITask,SomeTask, ITask> createObject, bool areEnumerations)
        {
            var finder = new TaskDependencyFinder();

            var a = new Mock<ITask>().Object;
            var b = new Mock<ITask>().Object;
            var c = new SomeTask();

            var task = createObject(a, b, c);

            IEnumerable<TaskDependency> deps = finder.GetDependenciesFor(task);

            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("A", areEnumerations)).Task, Is.SameAs(a));
            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("B", areEnumerations)).Task, Is.SameAs(b));
            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("C", areEnumerations)).Task, Is.SameAs(c));
            Assert.That(deps.Select(d => d.Task), Is.EquivalentTo(new [] {a, b, c}));
        }
Esempio n. 9
0
        private void AssertThatCreatedObjectReturnsDependencies(Func <IObsoleteTask, IObsoleteTask, SomeTask, IObsoleteTask> createObject, bool areEnumerations)
        {
            var finder = new TaskDependencyFinder();

            var a = new Mock <IObsoleteTask>().Object;
            var b = new Mock <IObsoleteTask>().Object;
            var c = new SomeTask();

            var task = createObject(a, b, c);

            IEnumerable <TaskDependency> deps = finder.GetDependenciesFor(task);

            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("A", areEnumerations)).Task, Is.SameAs(a));
            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("B", areEnumerations)).Task, Is.SameAs(b));
            Assert.That(deps.Single(d => d.Name == MakeEnumerationProperty("C", areEnumerations)).Task, Is.SameAs(c));
            Assert.That(deps.Select(d => d.Task), Is.EquivalentTo(new [] { a, b, c }));
        }
        static void Main(string[] args)
        {
            SomeTask func = GetRandomArray;

            TaskLoop(func, "Задание 1", "Массив неповторяющихся элементов");

            func = SoccerTable;
            TaskLoop(func, "Задание 2", "Результаты игры футбольной команды");

            func = SignChangeCount;
            TaskLoop(func, "Задание 3", "Подсчитать количество смены знаков элементов массива");

            func = WindDirection;
            TaskLoop(func, "Задание 4", "Определить расположение жилого комплекса");

            func = ChineseCalendar;
            TaskLoop(func, "Задание 5", "Восточный календарь");
        }
        static void Main(string[] args)
        {
            SomeTask func = Task3;

            TaskLoop(func, "Задание 3", "Операции с тремя числами");
        }
Esempio n. 12
0
 public TaskWithProperties(Func <IObsoleteTask> a, IObsoleteTask b, SomeTask c)
 {
     getA = a;
     B    = b;
     C    = c;
 }
Esempio n. 13
0
 public TaskWithEnumerationsInProperties(Func <IObsoleteTask> a, IObsoleteTask b, SomeTask c)
 {
     getA = a;
     B    = new[] { b };
     C    = new List <SomeTask> {
         c
     };
 }
Esempio n. 14
0
 public TaskWithProperties(Func<ITask> a, ITask b, SomeTask c)
 {
     getA = a;
     B = b;
     C = c;
 }
Esempio n. 15
0
 public TaskWithFields(ITask a, ITask b, SomeTask c)
 {
     A = a;
     B = b;
     C = c;
 }
Esempio n. 16
0
 public TaskWithEnumerationsInProperties(Func<ITask> a, ITask b, SomeTask c)
 {
     getA = a;
     B = new[] {b};
     C = new List<SomeTask> {c};
 }
Esempio n. 17
0
 public TaskWithEnumerationsInFields(ITask a, ITask b, SomeTask c)
 {
     A = new [] {a};
     B = new[] {b};
     C = new List<SomeTask> {c};
 }
Esempio n. 18
0
        static int Main(string[] args)
        {
            if (args.Length < 1)
            {
                return(PrintUsage());
            }
            string mode = args[0];

            SomeTask[] tasks   = null;
            int        threads = 1;

            try {
                threads = int.Parse(args[1]); // arg 1: number of threads

                switch (mode)
                {
                case "sweep": {
                    int IE = int.Parse(args[3]);         // arg 3: last task (one-based)
                    int I0 = int.Parse(args[2]);         // arg 2: first task

                    tasks = new SomeTask[IE - I0 + 1];
                    for (int i = I0; i <= IE; i++)
                    {
                        tasks[i - I0] = new SweepTask(
                            i - 1,
                            args[4],          // arg 4: exe file
                            args[5]           // arg 5: control file
                            );
                    }

                    break;
                }

                case "general": {
                    tasks = new SomeTask[args.Length - 2];
                    for (int i = 2; i < args.Length; i++)
                    {
                        //Console.WriteLine("#" + i + ":   " + args[i]);
                        tasks[i - 2] = new GeneralTask(i - 2, args[i].Replace("@@", "  "));
                    }

                    break;
                }

                default:
                    return(PrintUsage());
                }
            } catch (Exception) {
                return(PrintUsage());
            }

            var options = new ParallelOptions()
            {
                MaxDegreeOfParallelism = threads
            };

            Parallel.Invoke(options, tasks.Select(t => ((Action)t.Run)).ToArray());

            for (int i = 0; i < tasks.Length; i++)
            {
                if (!tasks[i].success)
                {
                    return(i + 1);
                }
            }
            return(0);

            //tasks[0].RunExample();
        }
Esempio n. 19
0
 public void SetUp()
 {
     someTask = new SomeTask();
     otherTask = new SomeOtherTask();
 }
Esempio n. 20
0
 public TaskWithFields(IObsoleteTask a, IObsoleteTask b, SomeTask c)
 {
     A = a;
     B = b;
     C = c;
 }
Esempio n. 21
0
 public TaskWithFields(IObsoleteTask a, IObsoleteTask b, SomeTask c)
 {
     A = a;
     B = b;
     C = c;
 }