Я столкнулся с проблемой, но не могу понять, почему она возникает. Это происходит, когда я использую асинхронную функцию несколько раз, но не происходит, когда я использую синхронную функцию. Вот пример:
tasks_async = []
for line in client.clients_data:
client.client_name = line['Client']
print("Value:" + client.client_name)
task_async.append(async.create_task(request(line, client)
async def request(line, client)
print("Async value :" + client.client_name)
Результат:
Value: client1
Value: client2
Value: client3
Async value : client3
Async value : client3
Async value : client3
Почему это происходит и почему? Я могу справиться с этим, инициализировав client.client_name внутри функции асинхронного запроса, но я сталкиваюсь с той же проблемой внутри функции запроса, потому что после этого у меня есть асинхронные запросы, такие как
async with ClientSession() as session:
async with await session.get(...)
, и это происходит снова для других параметры. Я думаю, это немного похоже на этот пост: Почему python asyncio l oop .call_soon перезаписывает данные? , но я не понимаю ответов. Спасибо!