block - временно блокирует доставку событий
Резюме
block [(--local | --global)] block --erase
Описание
block предотвращает доставку и обработку событий, инициированных fish или командой emit, пока блокировка активна.
В функциях block может быть полезным при выполнении задач, которые не должны прерываться оболочкой.
Блокировку можно снять. Все события, возникшие во время блокировки, будут затем доставлены.
Блоки событий не следует путать с блоками кода, которые создаются с помощью begin, if, while или for
Без опций команда block действует в рамках области видимости функции.
Доступны следующие опции:
- -l или --local
-
Автоматически снимает блокировку в конце области видимости текущего внутреннего блока кода.
- -g или --global
-
Никогда не снимает блокировку автоматически.
- -e или --erase
-
Снимает глобальную блокировку.
- -h или --help
-
Отображает справку по использованию этой команды.
Пример
# Create a function that listens for events function --on-event foo foo; echo 'foo fired'; end # Block the delivery of events block -g emit foo # No output will be produced block -e # 'foo fired' will now be printed
Примечания
События принимаются только от текущего процесса fish, так как нет способа отправлять события из одного процесса fish в другой (пока).
© 2005-2009 Axel Liljencrantz, 2009-2023 fish-shell contributors
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.6/cmds/block.html