/
vint10tov
/
HomeServer
Обзор
Документация
Войти
/
vint10tov
/
HomeServer
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/Source/main.cpp
34 строки
1 KB
vint10tov
rt
10 ноя 2024, 13:19
10 ноя 2024, 13:19
635f469
Код
Авторство
О чём код?
#include <thread> #include <memory> #include "server_socket.hpp" #include "client_socket.hpp" #include "handle_client.hpp" #include "uart_uno.hpp" #include "logger.hpp" // Инициализация статических член-класса UartUno* UartUno::instance = nullptr; ServerSocket* ServerSocket::instance = nullptr; int main() { // Получаем единственный экземпляр UartUno UartUno* uartuno = UartUno::getInstance(); ServerSocket* server_socket = ServerSocket::getInstance(); if (server_socket->GET_descriptor_server_socket() > 0) { while (true) { std::shared_ptr<ClientSocket> client_socket = std::make_shared<ClientSocket>(); //ClientSocket client_socket(server_socket); if (client_socket->IsOpen()) { // Создаем новый поток для обработки клиента std::thread clientThread([client_socket, uartuno](){handleClientBase handleClientBase(client_socket, uartuno);}); // Отделяем поток, чтобы он работал независимо clientThread.detach(); } } } return 0; }