Spec-Zone.ru › Fish 3.5

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 в другой.

© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.5/cmds/block.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API