В чем разница между wxSocketServer и wxTcpServer?

Я использую wxWidgets 3.0.2 с mingw-w64 (g++) и хотел бы написать сервер, который прослушивает порт TCP и может одновременно поддерживать несколько подключений от клиентов.

Существует документация вместе с одним официальным примером кода для wxSocketServer. Существует также класс под названием wxTCPServer, который содержит базовую документацию.

Однако мне не удалось найти (путем поиска) какие-либо примеры кода или объяснения, касающиеся wxTCPServer. В чем разница между ними и какой из них я должен использовать?


person M.M    schedule 02.03.2015    source источник


Ответы (1)


wxTCPServer — это реализация протокола IPC wxWidgets на основе TCP (другая реализация, доступная только в MSW, использует DDE). Обычно вы не должны использовать его напрямую, вместо этого используйте wxServer. Конечно, если вам нужен универсальный сервер сокетов, вы должны использовать сам wxSocketServer, а не любой из этих классов.

Еще лучше использовать специальную библиотеку сокетов/сетей, например (Boost) ASIO или cpp-netlib. Поддержка wxWidgets TCP очень проста и должна использоваться только для относительно простых вещей, т.е. когда ни производительность, ни масштабируемость не имеют значения.

person VZ.    schedule 03.03.2015
comment
поэтому SocketServer — это общий сервер TCP/IP, а TCPServer — что-то еще. Чисто как грязь :) Спасибо и за другие предложения. - person M.M; 04.03.2015
comment
wxTCPServer — это TCP-версия wxServer, так что это имеет смысл, но только если вы сильно щуритесь. В любом случае, единственное, что вам нужно знать о wxTCPServer, это то, что вы не должны его использовать, так что его имя - это последнее, о чем стоит беспокоиться... - person VZ.; 04.03.2015