5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
|
||||||||||||||||
1 | ||||||||||||||||
.NET 4.x TcpSocket: Обычно разрешается только одно использование адреса сокета26.12.2018, 22:36. Показов 1979. Ответов 2
Понимаю, что тем с таким заголовком уже уйма, но ответа я так и не увидел. А точнее - что делать в моем случае.
Итак, делаю сервер, который слушает локалку по указанному порту. За основу взял эту библиотеку - https://github.com/nterry/AwesomeSockets. Вот так выглядит метод запуска прослушивания:
Везде пишут, что это нормально и порт сам освободится через некоторое время (вроде 240 секунд), но в моем случае этого не происходит. Помогает только перезагрузка компа. Как быть?
0
|
26.12.2018, 22:36 | |
Ответы с готовыми решениями:
2
Обычно разрешается только одно использование адреса сокета (протокол/сетевой адрес/порт)
Сокеты. Ошибка «Обычно разрешается одно использование адреса сокета» |
![]() ![]() ![]() |
||||||
27.12.2018, 11:48 | 2 | |||||
Modis,
Ну во-первых, с такими вопросами нужно обращаться к разработчику библиотеки. Вы же сами даете ссылку на github. Там есть раздел Issues для таких вещей. Далее, по сути проблемы. Я немного посмотрел код и думаю, что причина вот в чем. Посмотрите например на вот эту строку: https://github.com/nterry/Awes... ock.cs#L48 Здесь создается поток Thread. Но дело в том, что по умолчанию, поток - работает в режиме foreground. А это значит что поток не завершается, даже если вы завершаете приложение. Поэтому поток нужно перевести в режим background и тогда он будет автоматически завершаться с завершением приложения:
Может проблема и не только в этом, это просто бросается в глаза.
1
|
5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
|
|
27.12.2018, 17:27 [ТС] | 3 |
Storm23, спасибо. Отличное замечание
Добавлено через 23 минуты а по хорошему, наверное, заменит все на Task'и нужно Добавлено через 5 часов 13 минут Вопрос решен. Проблема в самом неожиданном месте и, надеюсь, кому-то пригодится. Итак, используя командную строку и команду
0
|
27.12.2018, 17:27 | ||||||
Помогаю со студенческими работами здесь
3
В сервере ошибка Обычно разрешается одно использование адреса сокета Ошибка в клиенте: Обычно разрешается одно использование адреса сокета Обычно разрешается одно использование адреса сокета (протокол/сетевой адрес/порт) Проблема с UdpClient (разрешается только одно использование адреса сокета) Обычно разрешается только одно использование адреса сокета(протокол/сетевой адрес/порт) Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
![]() |
Новые блоги и статьи
![]() |
||||
Временные зоны и std::chrono в C++
Wired 1 23.02.2025
Библиотека chrono в C++20 построена на основе базы данных часовых поясов IANA (также известной как "база данных tz" или "zoneinfo"), которая является признанным стандартом для информации о временных. . .
|
Как устроен std::expected в C++23
Wired 2 23.02.2025
В любом языке программирования одной из ключевых проблем остается обработка ошибок и возвращение результатов из функций. Появление std::expected в C++23 предлагает удобное решение, позволяющее. . .
|
Монадические расширения std::expected в C++
Wired 3 23.02.2025
Тип std::expected, появившийся в C++23, предоставляет возможности для работы с операциями, которые могут завершиться как успешно, так и с ошибкой. Однако его истинная сила раскрывается через. . .
|
Упрощение кода с помощью if constexpr и концепций в C++17 и C++20
Wired 4 23.02.2025
Разработка сложных программных систем на C++ нередко требует гибкости в отношении компиляции различных участков кода в зависимости от определенных условий. До появления современных возможностей языка. . .
|
20 способов инициализировать строку в C++
Wired 5 23.02.2025
Давайте разберем основные методы инициализации std::string в C++ и рассмотрим их особенности, преимущества и потенциальные подводные камни.
Начнем с самого простого - создания пустой строки. В C++. . .
|
const vs consteval vs constexpr vs constinit в C++20
Wired 1 23.02.2025
const используется для обозначения неизменяемости в C++. Когда мы объявляем переменную как константу, мы даем компилятору и другим разработчикам четкий сигнал - значение этой переменной не должно. . .
|
Рисование таблиц с std::format в C++20
Wired 2 23.02.2025
Основной синтаксис форматирования C++ использует фигурные скобки как заполнители, внутри которых можно указывать различные параметры форматирования. Простейшая форма выглядит как std::format("{}"),. . .
|
Диапазоны в C++20: Композиция алгоритмов
Wired 3 23.02.2025
В своей основе диапазон - это обобщение пары итераторов, задающих начало и конец последовательности элементов. Однако такое простое определение скрывает за собой революционные возможности для. . .
|
Ranges View и View Adaptor в C++20 и C++23
Wired 4 23.02.2025
Появление концепции Ranges и Views в C++ стало значительным шагом вперёд в работе с последовательностями данных. Views представляют собой легковесные объекты, которые позволяют манипулировать данными. . .
|
Умные указатели и динамические массивы в C++
Wired 5 23.02.2025
Работа с динамической памятью в C++ всегда была источником множества проблем и ошибок. Традиционное управление памятью через обычные указатели требует особой внимательности - программист должен не. . .
|