Untitled

 avatar
unknown
plain_text
a year ago
1.1 kB
2
Indexable
        logging.warning(f'Новое подключение | {self.ip_address}')
        db = await self.get_db_session()
        self.connecting_log = ConnectingLog(ip_address=self.ip_address, is_connect = True)
        db.add(self.connecting_log)
        await self.close_db_session()

        receiver = asyncio.create_task(self.receiver()) # Слушатель, читает и складывает в данные
        sender = asyncio.create_task(self.sender()) # Отправитель, пишет если есть данные в очереди на отправку
        package_analysis = asyncio.create_task(self.package_analysis()) # разбирает данные, складывает в очередь на отправку
        breaker = asyncio.create_task(self.breaker(tasks=[receiver, sender, package_analysis])) # проверяет не пора ли завершить
        try:
            await asyncio.gather(*[receiver, sender, package_analysis, breaker])
        except Exception as e:
            logging.warning(f'Работа с клиентом завершена | {self} | {e}')
Leave a Comment