Обмен данными между двумя соединениями эффективно Python сокеты
Я работаю над школьным проектом, и у меня была идея, которая, как мне кажется, принесет мне пользу вне школы и немного превосходит то, что требует школа от меня.
Вот почему у меня немного не хватает знаний, всего, что касается потоков и работы с несколькими клиентами одновременно.
У меня было несколько идей, таких как использование UDP, ожидание двух соединений и обработка каждого из них, но это сделало мой код действительно грязным и трудным для понимания, а на самом деле неэффективным.
Я хотел бы знать, есть ли хороший способ справиться с такой проблемой и как.
1 ответ
Если вы хост, то вы создаете новый сокет для каждого нового клиента. Имея это в виду, вы можете создать программу, которая будет прослушивать соединения, а затем создавать новый поток для каждого соединения (для клиента). Каждый поток может выполнять несколько задач, управлять сокетом и / или обмениваться данными с основным потоком.
То же самое относится и к тому, что вы являетесь клиентом: вы можете создавать новый поток для каждого нового соединения.
Надеюсь, это поможет.