Установка конвейеров, читающих из именованных каналов, не блокируясь в ударе

Я думаю, что установка android:layout_height="match_parent" на ConstraintLayout решит вашу проблему.

7
задан Charles Duffy 7 October 2008 в 17:55
поделиться

2 ответа

Открытие чтения-записи FD, а не только для чтения при установке конвейера предотвращает блокирование.

Быть немного более конкретным:

$ mkfifo /tmp/foobar.pipe
$ some_program --command-fd=5 5<>/tmp/foobar.pipe

предотвращает нежелательное поведение блокирования, как 5<>/tmp/foobar.pipe открывается в режиме RW (в противоположность открытию в режиме только для чтения как с 5</tmp/foobar.pipe) хотя O_NONBLOCK все еще установлен. Благодаря waldner на irc://irc.freenode.org/#bash для этого указателя.

9
ответ дан 6 December 2019 в 21:21
поделиться

Единственным путем я знаю, что получение этого вида результата является взломом:

mkfifo /tmp/foobar.in
mkfifo /tmp/foobar.out
( cat </tmp/foobar.in ) >/tmp/foobar.out &
some_program --command-fd=5 5</tmp/foobar.out

возможно, это помогает :-)

3
ответ дан 6 December 2019 в 21:21
поделиться