Difference between revisions of "User:StasFomin/Linux/Неблокирующий сплиттер"
From Wiki4Intranet
(Created page with "File:Неблокирующий сплиттер.svg") |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | Система сплиттинга линуксовых пайпов через tee как бы синхронна, | ||
+ | т.е. если я делаю как-то так | ||
+ | |||
+ | source_util | tee mail_util aux_util | ||
+ | |||
+ | и aux_util начинает тормозить с чтением, то тормозится и получение на main_util | ||
+ | |||
+ | Как бы разорвать этот круг? | ||
+ | Т.е. если aux_util не успевает читать — то и хрен с ним, пусть, когда он очнется, получает текущие данные, потеряв то, где он тормозил. | ||
+ | |||
+ | Интересно, можно ли это сделать юникс-way, т.е. есть ли готовая утилита, или придется писать что-то свое (кольцевой буфер?). | ||
+ | |||
+ | |||
[[File:Неблокирующий сплиттер.svg]] | [[File:Неблокирующий сплиттер.svg]] |
Latest revision as of 15:21, 25 July 2013
Система сплиттинга линуксовых пайпов через tee как бы синхронна, т.е. если я делаю как-то так
source_util | tee mail_util aux_util
и aux_util начинает тормозить с чтением, то тормозится и получение на main_util
Как бы разорвать этот круг? Т.е. если aux_util не успевает читать — то и хрен с ним, пусть, когда он очнется, получает текущие данные, потеряв то, где он тормозил.
Интересно, можно ли это сделать юникс-way, т.е. есть ли готовая утилита, или придется писать что-то свое (кольцевой буфер?).