1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dushibaiyu-QAsioSocket

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 16.03.2025 13:05 c5092ff

QAsioTcpSocket

Обертка асинхронных операций сокета Asio в простой API, аналогичный Qt Network.


Преимущества, цели:

API прост в использовании и элегантен. Обёртка полностью скрывает детали реализации Asio. Не зависит от Boost. Можно просто включить код в проект, либо скомпилировать как динамическую библиотеку.

Сравнение сокетов Qt:

Высокая производительность: максимально использует платформенные возможности, win (iocp), linux (epoll). В то время как сокеты Qt используют select. Высокая конкурентоспособность: личные неточные тесты показывают, что QTcpServer не может принимать новые соединения после 900+ подключений. В то время как QAsioTcpServer легко работает с тысячами соединений.


Как использовать:

  1. Компиляция: Откройте проект (QAsioSocket.pro) в Qt Creator, затем откройте src.pro файл. Затем скомпилируйте, динамическая библиотека будет находиться в папке lib, а заголовочные файлы — в папке include.
  2. Прямое использование исходного кода: Копируйте код в ваш проект. В pro файле включите include(QAsioSocket/QAsioSocket.pri), Добавьте макрос DEFINES += QASIOSOCKET_NOLIB в ваш pro файл.

Зависимости окружения

Библиотеки: Qt 5.x (используется только модуль Core), asio (не использует Boost. Уже включен в исходный код) Windows: vs2013+, mingw 4.9+ Linux: gcc 4.8+***************************************

Активация SSL:

	Подключение SSL реализовано только на стороне сервера. Можно создать сервер SSL сокета, но нет клиентских интерфейсов для подключения к удаленному серверу SSL.
	Сборка библиотек с активацией SSL:
	Добавьте в src.pro файл макрос DEFINES += QASIO_SSL (можно также раскомментировать соответствующую строку).
	Добавьте ссылки на openssl библиотеки.
	Если вы используете прямое использование исходного кода, добавьте макрос QASIO_SSL в ваш pro файл и добавьте ссылки на openssl библиотеки.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/dushibaiyu-QAsioSocket.git
git@api.gitlife.ru:oschina-mirror/dushibaiyu-QAsioSocket.git
oschina-mirror
dushibaiyu-QAsioSocket
dushibaiyu-QAsioSocket
master