Есть ли у ruby собственный класс двунаправленного строкового буфера?Я хотел бы иметь возможность сделать что-то вроде этого:
buf = Buffer.new
Thread.new do
while true
# do some work
buf << result
end
buf.close
end
Thread.new do
until buf.eof?
result = buf.readline
# do some work
end
end
StringIO
поддерживает либо чтение или запись, но не оба.Если я инициализирую новый и напишу в него, затем попытаюсь прочитать с него, я ничего не получу.Есть ли способ получить простой старый поток связи, подобный этому, который не требует использования mkfifo
или чего-то еще?