gtkmm многопоточный Unix сокет сервер-клиент - PullRequest
0 голосов
/ 05 октября 2018

Я много искал, но пока не нашел подсказок о том, как создать приложение gtkmm с сервером сокетов Unix, принимающим несколько клиентов.

Вот чего я хочу достичь:

  • Используя C ++ и gtkmm

  • , создайте окно с пустой записной книжкой и запустите сервер сокетов.Когда клиент подключается к серверу, появляется новая страница в записной книжке с TextView, запускается поток для установления связи между клиентом и сервером, и поступающий текст появляется в этом TextView.Каждый клиент должен получить поток и блокнот с TextView.На данный момент для связи используется клиент-> сервер, но в будущем рассматривается двунаправленный com.

Я могу:

  • создать графический интерфейс
  • общаться через сокет с одним клиентом с помощью Glib
  • создать многопоточный сервер для большего количества клиентов, но не с помощью Glib

Я использую: Unix-сокеты (IPC, нет сети), GSocket, GSocketService, IO каналы для обратного вызова, но я не могу запрограммировать мультиклиентский сервер.

Трудно сказать, что не работает, потому что я сделал свое приложение на основе многих примеров в сети- Я не нашел никакой информации о том, кому достичь моих целей с помощью gtkmm и Glib.

Буду признателен за любую помощь, подсказки, документацию.Я не хочу получать готовое приложение, потому что я хочу учиться ;-) При необходимости я могу создать пример приложения для публикации здесь.

Заранее спасибо и наилучшими пожеланиями

Jozef

...