асинхронность в питоне не работает
У меня есть код на питоне в котором я пытаюсь использовать асинхронность, но она не работает. Вот код:
import asyncio
import socket
class App:
def __init__(self):
class Sets:
class Internet:
ip = '192.168.0.129'
port = 1337
self.server_address = (Sets.Internet.ip, Sets.Internet.port)
self.server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.server_socket.bind(self.server_address)
self.server_socket.listen(1)
print("ожидание подключения...", end=' ')
self.connection, client_address = self.server_socket.accept()
self.connect_to_client()
print("подключен")
self.Sets = Sets
def connect_to_client(self):
self.server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.server_socket.bind(self.server_address)
self.server_socket.listen(1)
async def start(self):
event_loop = asyncio.get_event_loop()
await asyncio.gather(self.server(), self.game())
@staticmethod
async def game():
while True:
print(f"тик")
async def server(self):
while True:
try:
while True:
try:
data = self.connection.recv(1024)
except OSError:
print("подключение разорвано, ожидание переподключения... ", end='')
self.connection, client_address = self.server_socket.accept()
print("подключен")
continue
if data:
print("#2#Received request:", data.decode())
...
finally:
self.connection.close()
И основной файл:
from app import App, asyncio
def main() -> None:
app_instance = App()
asyncio.run(app_instance.start())
if __name__ == '__main__':
main()
Вот код с помощью которого я отправляю запросы (если вдруг надо)
import socket
host_address = '192.168.0.129', 1337
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(host_address)
while True:
data = input('>>> ')
if not data:
continue
client_socket.sendall(data.encode())
проблема в том что должна запускаться еще и функция game, которая по факту не запускается.