aiofiles python отправляет файл кусками через поток
Я пытаюсь отправить файл с помощью aiofiles через асинхронные сокеты, файл отправляется, но отправка не останавливается, пока я не убью сервер, не уверен, что я здесь делаю неправильно. Я пробовал несколько примеров, но не повезло с ними, похоже, не работает как обычный файл python io, когда этот код попадает в запись в цикле, он просто застревает там
клиент
async with aiofiles.open(fp, mode="rb",loop=loop) as fileread:
print (str(fileread))
chunksize = 0
while True:
content = await fileread.read(1000) #async await
contentstr = str(content)
while content:
await writer1.write(content)
await writer1.drain()
if not content:
break
writer1.close()
file_sent = 1
print ("done reading")
сервер
if numberx != 0:
async with aiofiles.open(filename, mode = "wb") as file:
while True:
data = await reader.read(1000)
while data:
await file.write(data)
await file.flush()
file.close()
if not data:
writer.close()
break