Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
9 / 9 / 0
Регистрация: 15.07.2010
Сообщений: 255

Соккеты.

07.04.2012, 16:47. Показов 931. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При подключении к серверу (например, telnet localhost [НОМЕР_ПОРТА]) в терминале, где запущен сервер, выводится сообщение fork: no child process was created!.
Почему после закрытия соединения с клиентом в цикле while (1) {...} get_new_connection_socket(...) возвращает дескриптор (не валидный, т.к. соединение закрыто), который, соответ-но, используется send_message(..) ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
...
sockaddr_storage connection_address;
        while ( 1 )
        {
            int connection_socket = get_new_connection_socket(local_socket, connection_address);
            if ( connection_socket == -1 )
            {
                std::cout << "accept: not valid descriptor!n";
                continue;
            }
            show_connection_address(connection_address);
            send_message(local_socket, connection_socket);
            close(connection_socket);
        }
...
void send_message(int& local_socket, int& connection_socket)
{
    if ( !fork() )
    {
        close(local_socket);
        char message [50] = "Connect to me again, client!\n";
        int result = send(connection_socket, message, sizeof(message), 0);
        if ( result == -1 )
        {
            std::cout << "send: error!\n";
        }
        close(connection_socket);
        exit(0);
    }
    else
    {
        std::cout << "fork: no child process was created!\n";
    }
}
...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.04.2012, 16:47
Ответы с готовыми решениями:

Программирование программы управления генератором RS SMU200A на C++ используя соккеты
Доброго времен суток. Прошу помочь идеями или советом (возможно кто-то уже сталкивался с чем-то подобным). Пишется программа по...

Соккеты
На сервере прописываю: import socket import sys s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) host = 'localhost' port =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
07.04.2012, 21:04
читайте лучше маны про форк, обращая внимание на возвращаемое значение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru