BugTraq.Ru
Русский BugTraq
https://bugtraq.ru/lj/archive/2011/0206.0241.html

сокетное
02.06.11 02:41 // оригинал
Последняя лаба третьего курса, простенькое взаимодействие между консольным сервером и диалоговым клиентом через сокеты. Как обычно, первые сдающие проскакивают без строго соответствия требованиям (традиционная привилегия первых рядов), дальше начинается развлекуха. Отдельный цирк - хоровая сдача голых сокетов при том, что на лекциях давалась только MFCшная обертка, ну это ладно, даже веселее. Долго терпел клоны, наконец стал жестко требовать обязательного ответа сервера с передачей подтверждений или всякой полезной информации типа количества потоков. Дальше конвейер - смотрю в код серверной оберточной функции Receive (имя условное), наблюдаю отсутствие send после recv (и аналогичного симметричного recv в условной клиентской Send), отправляю пациента на следующую итерацию.

И вот подтянулась следующая итерация, и у меня аж на несколько минут закончились слова. В этой новой вершине студенческой мысли народ, видимо, побоялся трогать запредельные для своего понимания внутренности оберточных функций и воспринял их как пришедшие на руки карты, с которыми и нужно играть. В результате в ситуациях, когда сервер что-то должен ответить, происходит милый финт ушами - клиент прикидывается сервером, запуская Receive (ее реализация - отдельная песня, при каждом ее вызове происходит полный жизненный цикл серверного сокета, от создания до закрытия), сервер клиентом и шлет ответ через оберточную Send на фиксированный адрес 127.0.0.1 (клиенты ж всегда с локалхоста приходят).

 
теги: студень  |  обсудить  |  все отзывы (0)  |  обсудить в LJ [2054]
назад «  » вперед

аналогичные материалы
неестественноинтеллектуальное // 29.09.23 16:50
викиисключительное // 20.05.20 21:20
закопать стюардессу // 19.11.15 18:53
роботокурсовое // 18.06.15 03:18
турнирнокурсовое // 10.02.15 17:11
преподавательское // 15.03.13 21:46
шарпоплюсноучебное // 31.10.12 18:24
лабораторное // 14.10.12 00:01
третьекурсное // 21.08.12 17:08
координатное // 20.06.12 15:22
 
последние записи
ihrkampfное // 02.10.24 16:30
отпускное // 08.07.24 23:02
синхронное // 13.06.24 18:07
автоматизаторское // 16.05.24 18:12
песчаное // 13.03.24 18:05
макоудаленное // 29.01.24 23:10
разнонедельное // 07.12.23 15:09
qtменюшное // 29.09.23 23:47
неестественноинтеллектуальное // 29.09.23 16:50
основательное // 18.09.23 00:15





  Copyright © 2001-2024 Dmitry Leonov Design: Vadim Derkach