Реализовать ситуацию взаимодействия по типу клиент-сервер с использованием задач
Лабораторная работа
в среде программирования Visual C# .NET 2013
Среда программирования: Visual C# .NET 2013
Название работы: Реализовать ситуацию взаимодействия по типу клиент-сервер с использованием задач
Вид работы: Лабораторная работа
Описание: Реализовать ситуацию взаимодействия по типу клиент-сервер с использованием задач (Task).
Для этого требуется:
1. Объявить класс Server, который обладает следующими свойствами
1.1. Принимает запросы с помощью метода Receive
1.2. Обеспечивает неблокирующую обработку одновременно поступающих запросов
1.3. Возвращает результат, содержащий флаг успешного завершения и новое значение
1.4. Обрабатывает запрос приблизительно в течении времени T1 (1)
1.5. Должен отслеживать выполнение других задач одного клиента, при наличии других задач принимает решение о выполнении запроса (4)
1.5.1. Ожидание – ожидает завершения другой задачи, после начинает работу;
1.5.2. Прерывание – возврат состояние не успешного завершения обработки запроса
1.5.3. Присоединение – Ожидает завершения другой задачи и возвращает ее результат;
1.5.4. Перезапуск – отменяет исполнение другой задачи, после начинает работу;
1.6. Выполняет действие, указанное в варианте работы (6)
2. Объявить класс Client, который обладает следующими свойствами
2.1. Отправляет запросы с помощью метода Send
2.2. В качестве параметра отправляет серверу сущность, указанную в варианте работы (5)
3. В основном потоке создается N (3) клиентов, по истечении времени T2 (2) один из них выполняет запрос, при этом выполнение запроса одним клиентом не должно мешать выполнению запроса другими клиентами. Процесс отправки запросов бесконечен.
4. Необходимо предусмотреть возможность корректного завершения работы приложения по запросу пользователя.
Вариант 1.
1. (T1) Время обработки запроса: 5 сек.
2. (T2) Время между запросами: 0.7 сек.
3. (N) Количество клиентов: 4.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: Целочисленного значения (из диапазона 10-99).
6. Обработка: Увеличение значения на 100.
Вариант 2.
1. (T1) Время обработки запроса: 6.5 сек.
2. (T2) Время между запросами: 0.9 сек.
3. (N) Количество клиентов: 6.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: Целочисленного значения (из диапазона 50-75).
6. Обработка: Умножение значения на 10.
Вариант 3.
1. (T1) Время обработки запроса: 4 сек.
2. (T2) Время между запросами: 0.6 сек.
3. (N) Количество клиентов: 5.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: Целочисленного значения (из диапазона 10-20).
6. Обработка: Вставка значения в заданную исполнителем строку.
Вариант 4.
1. (T1) Время обработки запроса: 8 сек.
2. (T2) Время между запросами: 1 сек.
3. (N) Количество клиентов: 7.
4. При наличии другой задачи выполняется: Ожидание.
5. Отправка: дробного значения (из диапазона 10-99).
6. Обработка: Вставка значения в заданную исполнителем строку.
Вариант 5.
1. (T1) Время обработки запроса: 5 сек.
2. (T2) Время между запросами: 0.5 сек.
3. (N) Количество клиентов: 3.
4. При наличии другой задачи выполняется: Прерывание.
5. Отправка: дробного значения (из диапазона 11-23).
6. Обработка: Увеличение значения на 70.
Вариант 6.
1. (T1) Время обработки запроса: 6.5 сек.
2. (T2) Время между запросами: 0.9 сек.
3. (N) Количество клиентов: 6.
4. При наличии другой задачи выполняется: Ожидание.
5. Отправка: дробного значения (из диапазона 10-48).
6. Обработка: Умножение значения на 5.
Вариант 7.
1. (T1) Время обработки запроса: 4 сек.
2. (T2) Время между запросами: 0.6 сек.
3. (N) Количество клиентов: 5.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: дробного значения (из диапазона 20-30).
6. Обработка: Округление до ближайшего большего целого.
Вариант 8.
1. (T1) Время обработки запроса: 6 сек.
2. (T2) Время между запросами: 0.6 сек.
3. (N) Количество клиентов: 5.
4. При наличии другой задачи выполняется: Перезапуск.
5. Отправка: Заданной исполнителем строки.
6. Обработка: Вставка значения в другую заданную исполнителем строку.
Вариант 9.
1. (T1) Время обработки запроса: 8 сек.
2. (T2) Время между запросами: 1 сек.
3. (N) Количество клиентов: 7.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: дробного значения (из диапазона 10-48).
6. Обработка: Умножение значения на 5.
Вариант 10.
1. (T1) Время обработки запроса: 5 сек.
2. (T2) Время между запросами: 0.5 сек.
3. (N) Количество клиентов: 3.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: дробного значения (из диапазона 10-99).
6. Обработка: Вставка значения в заданную исполнителем строку.
Вариант 11.
1. (T1) Время обработки запроса: 6.5 сек.
2. (T2) Время между запросами: 0.9 сек.
3. (N) Количество клиентов: 6.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: Целочисленного значения (из диапазона 50-75).
6. Обработка: Умножение значения на 10.
Вариант 12.
1. (T1) Время обработки запроса: 5 сек.
2. (T2) Время между запросами: 0.7 сек.
3. (N) Количество клиентов: 4.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: дробного значения (из диапазона 20-30).
6. Обработка: Округление до ближайшего большего целого.
Вариант 13.
1. (T1) Время обработки запроса: 6 сек.
2. (T2) Время между запросами: 0.8 сек.
3. (N) Количество клиентов: 5.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: Целочисленного значения (из диапазона 25-45).
6. Обработка: Вставка значения в заданную исполнителем строку.
Вариант 14.
1. (T1) Время обработки запроса: 6 сек.
2. (T2) Время между запросами: 1 сек.
3. (N) Количество клиентов: 3.
4. При наличии другой задачи выполняется: Присоединение.
5. Отправка: целого значения (из диапазона 30-70).
6. Обработка: Умножение значения на 5.
Вариант 15.
1. (T1) Время обработки запроса: 7 сек.
2. (T2) Время между запросами: 0.5 сек.
3. (N) Количество клиентов: 6.
4. При наличии другой задачи выполняется: Перезапуск.
5. Отправка: Целочисленного значения (из диапазона 10-99).
6. Обработка: Увеличение значения на 100.
Вариант 16.
1. (T1) Время обработки запроса: 5.5 сек.
2. (T2) Время между запросами: 0.3 сек.
3. (N) Количество клиентов: 8.
4. При наличии другой задачи выполняется: Прерывание.
5. Отправка: дробного значения (из диапазона 20-99).
6. Обработка: Вставка значения в заданную исполнителем строку.
Вариант 17.
1. (T1) Время обработки запроса: 4.7 сек.
2. (T2) Время между запросами: 0.6 сек.
3. (N) Количество клиентов: 5.
4. При наличии другой задачи выполняется: Ожидание.
5. Отправка: дробного значения (из диапазона 50-85).
6. Обработка: Округление до ближайшего большего целого.
Год: 2017
Данный заказ (лабораторная работа) выполнялся нашим сайтом в 2017-м году, в рамках этого заказа была разработана программа в среде программирования Visual C# .NET 2013. Если у Вас похожее задание на программу, которую нужно написать на Visual C# .NET 2013, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2017-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".
Тел.:
+79374242235
Viber: +79374242235 Telegram: kursovikcom ВКонтакте: kursovikcom WhatsApp +79374242235 E-mail: info@kursovik.com Skype: kursovik.com |