{ "cells": [ { "cell_type": "markdown", "id": "f2acffb9", "metadata": {}, "source": [ "# Тест по работе с сетью и сокетами #" ] }, { "cell_type": "markdown", "id": "d917f045", "metadata": {}, "source": [ "##### Вас зовут:\n", "___" ] }, { "cell_type": "markdown", "id": "f20b25c6", "metadata": {}, "source": [ "##### 1. Для чего нужны сокеты?\n", "\n", "- [ ] Для организации взаимодействия процессов, работающих на разных серверах\n", "- [ ] Для хранения общих данных нескольких потоков, работающих на одном сервере" ] }, { "cell_type": "markdown", "id": "20a320bc", "metadata": {}, "source": [ "##### 2. Если программа сервер, работающая с сокетом, написана на языке, отличном от python, возможно написать программу клиент на python для отправки данных на сервер?\n", "\n", "- [ ] Нет\n", "- [ ] Да" ] }, { "cell_type": "markdown", "id": "f2b097b8", "metadata": {}, "source": [ "##### 3. Отметьте истинные утверждения:\n", "\n", "- [ ] контекстный менеджер автоматически выполнит вызов метода `close` для открытого сокета\n", "- [ ] контекстный менеджер позволяет контролировать закрытие сокетов\n", "- [ ] контекстный менеджер автоматически устанавливает новое соединение, если произойдет его разрыв\n", "- [ ] контекстный менеджер для сокета управляет скоростью чтения из сокета" ] }, { "cell_type": "markdown", "id": "117a3a11", "metadata": {}, "source": [ "##### 4. Отметьте истинные утверждения:\n", "\n", "- [ ] при возникновении `socket.error` сокет автоматически закрывается\n", "- [ ] `socket timeout` нужен для ограничения времени ожидания работы системных вызовов, связанных с сокетами\n", "- [ ] исключение типа `socket.error` генерируется при возникновении ошибок работы с сокетами на python\n", "- [ ] `socket timeout` нужен для установки нового соединения" ] }, { "cell_type": "markdown", "id": "03cd9233", "metadata": {}, "source": [ "##### 5. Как можно обработать большое количество одновременных соединений к серверу?\n", "\n", "- [ ] Создание отдельного потока для каждого нового соединения\n", "- [ ] Процессы и потоки не нужны, python автоматически обработает все соединения\n", "- [ ] Создание отдельного процесса для каждого соединения\n", "- [ ] Создание пула процессов и отдельных потоков для каждого соединения" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" } }, "nbformat": 4, "nbformat_minor": 5 }