Многопоточный socked-сервер (chilkat, c) - PullRequest
0 голосов
/ 27 мая 2020

Я хочу настроить сервер сокетов, который принимает входящие соединения и для каждого соединения выполняет несколько операций (обнаружение байтов, проверка чего-либо, отправка байтов ответа). Но каждое соединение должно работать независимо, и если что-то пойдет не так - не блокируйте весь сервер.

Я хочу сделать это, используя сокет chilkat и библиотеки задач.

Где в исходном коде я мог бы поместить принимающий / обработка / ответ / код? Чуть ниже CkTask_Run ()? Я не могу понять, как происходит разветвление, что делает «старый» процесс / поток и куда идет новый процесс. Есть ли какой-нибудь пример, чтобы понять, как это работает, или я могу получить какое-нибудь объяснение на низком уровне?

1 Ответ

0 голосов
/ 29 мая 2020

На мой взгляд, самое простое решение - написать многопоточное приложение. У вас есть одна ветка для приема новых подключений. Новый поток запускается для запуска каждого принятого соединения. Нет необходимости в asyn c или задачах. Каждый поток может работать с синхронными вызовами для чтения / записи / приема.

...