我有一个字符串缓冲区,例如:
["apple", "banana\n", "strawberry"]
这个想法是从左到右刷新缓冲区,直到缓冲区为空,或者刷新的项目包含“ \n
”
我的循环类似于以下内容:
while True:
if len(buffer) <= 0:
break
elem = buffer.flush(1)
if `\n`in elem:
break
实际代码更加复杂,循环永远不会终止。我不知道为什么。
代码位于here。无限循环位于第647至658行的write_line
方法内部。