Эффективное чтение



    Настало время для седьмой лекции курса «Сетевое программирование в UNIX», подготовленного специалистами SkyDNS и компании «Айдеко». Автор курса Александр Патраков объясняет студентам, как ускорить чтение небольших порций данных из сокета.

    В четвертой лекции Александр рассказал, что делать, если функция recv() возвращает меньше байт, чем ее попросили (в условиях, когда известно, сколько байт нужно прочитать). Случаи, когда нужно читать до разделителя (это имеет место в протоколах типа http), рассматривались вскользь.

    «В четвертой лекции предлагался самый простой вариант решения задачи о чтении до разделителя – читать по одному байту в цикле. Это ведет к неоправданным затратам процессорного времени», — поясняет Александр Патраков.

    Хотите знать, как избежать нерационального чтения по одному байту? Смотрите лекцию!



    Слайды доступны здесь

    Предыдущие лекции:
    1. Курс для тех, кто не боится UNIX и C
    2. Каждому клиенту по процессу
    3. Реализуем протокол или как работают астрологи
    4. О том, как читать до конца
    5. Программы в автоматном стиле — трудности перевода
    6.Как делать несколько дел одновременно и в то же время по очереди?
    • +1
    • 10,9k
    • 7
    Айдеко 34,12
    Компания
    Поделиться публикацией
    Ой, у вас баннер убежал!

    Ну. И что?
    Реклама
    Комментарии 7
      0
      Я конечно зануда, но какое отношение имеет зарисовка с поездом к теме поста?
        –1
        Зарисовка с поездом символизирует ускорение, а его вагоны — идею группировки данных.
        +1
        Не понимаю как можно 39 минут потратить на усваивание информации которую можно было бы пробежать глазами за пару минут максимум ( учитывая то что все уже известные куски мы сразу же пропускаем ). Наверное, я просто не аудиал.
          –1
          Идею любой лекции можно объяснить за пару минут. Сама же лекция в данном случае — это процесс поиска правильного решения, из которого слушатели могут почерпнуть (или не почерпнуть) для себя что-то новое.
          0
          Восьмая лекция курса:
          Как сделать программу нетерпеливой?
            0
            Девятая лекция курса:
            Как решить проблему 10 000 соединений?
              0
              Заключительная лекция курса:
              О производительности сетевых программ

              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

              Самое читаемое