Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/21: Рейтинг темы: голосов - 21, средняя оценка - 4.52
 Аватар для Vitalik-2007
1 / 1 / 0
Регистрация: 27.05.2021
Сообщений: 97

accept() отключить блокировку выполнения кода

11.05.2022, 21:01. Показов 4329. Ответов 3

Студворк — интернет-сервис помощи студентам
В сокетах на с++ есть такая функция: accept(). Проблема в том, что эта функция блокирует выполнение кода, пока не установится связь. Мне надо сразу получить результат. Установилась связь или нет.
Как это можно сделать? Использую Visual Studio 2019
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.05.2022, 21:01
Ответы с готовыми решениями:

как отключить блокировку CORS
Здравствуйте! Пишу простую программку (запускается на http://localhost:8080/), выводящую данные, полученные после запроса axios.get на...

Как отключить блокировку экрана
У меня при загрузки ОС стоит пароль. Если оставить монитор без работы минут на 7-10 то он выключается(просто монитор) . После этого , если...

Программно отключить блокировку экрана
Добрый день каким образом можно разлочить экран после блокировки кнопкой выключения, например когда надо показать какие то увеомления и т п.

3
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
11.05.2022, 22:13
Тут есть
https://docs.microsoft.com/en-... workevents
1
 Аватар для Vitalik-2007
1 / 1 / 0
Регистрация: 27.05.2021
Сообщений: 97
12.05.2022, 06:46  [ТС]
Цитата Сообщение от Замабувараев Посмотреть сообщение
Тут есть
https://docs.microsoft.com/en-... workevents
А можете скинуть пример кода?
Просто там не понятно, а в интернете я не нашел ничего по этому поводу

Добавлено через 46 минут
Как я понял, надо написать эту строчку после бинда и перед листеном:
C++
1
WSAEventSelect(s, NewEvent, FD_ACCEPT | FD_CLOSE);
accept больше не тормозит код, но теперь выдает всегда одно число. Это 4294967295.
0
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
12.05.2022, 12:41
Цитата Сообщение от Vitalik-2007 Посмотреть сообщение
Это 4294967295
Это -1.
На самом деле проверять на -1 тоже неверно, т.к. это деталь реализации. Проверять надо на значение INVALID_SOCKET.

INVALID_SOCKET функция возвращает в случае ошибки и\или, поскольку вы перевели сокет в неблокирующий режим, в случае необходимости отслеживания статуса сокета.

В данном случае при получении INVALID_SOCKET вы должны получить код ошибки или состояния операции с помощью WSAGetLastError, затем проанализировать его и предпринять соответствующие действия. Т.к. у вас неблокирующий accept, то при получении кода WSAEINPROGRESS или WSAEWOULDBLOCK вы должны будете получить статус завершения операции отслеживая событие NewEvent, например с помощью WSAWaitForMultipleEvents.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.05.2022, 12:41
Помогаю со студенческими работами здесь

Как отключить блокировку содержимого?
Есть куча пользователей, все они постоянно неправильно закрывают окна, материал блокируется. Администратора уже достали с постоянными...

Отключить блокировку экрана при бездействии
Как можно отключить блокировку экрана, если приложение активно, но пользователь долгое время не совершал никаких действий?

500 Internal, как отключить блокировку сервера!
Всем привет. Загружаю большой прайс на сервер через модуль, сервер в какой то момент блокируется и перестает работать выдавая ошибку 500....

Как отключить блокировку экрана в KDE Plasma?
Интересный вопрос. Есть у меня 2 компа. На обоих Mint (из одного дистрибутива) c KDE. Но... ... на первом блокировку экрана...

Как можно отключить блокировку приложения в Windows 7
Здравствуйте! У меня такая проблема после переустановки windows 7 начал блокировать приложение а точнее клиент AION. Как убрать блокировку...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru