receive

Извлеките сообщение из очереди

Синтаксис

Описание

пример

receive(message_name) извлекает вход или локальное сообщение от его получающей очереди. Если допустимое сообщение существует, receive возвращает true. Если допустимое сообщение не существует, но существует сообщение в очереди, график удаляет сообщение из очереди и receive возвращает true. Если допустимое сообщение не существует и нет никаких сообщений в очереди, receive возвращает false.

Примеры

развернуть все

Проверяйте очередь для сообщения M и постепенно увеличьте значение x если оба из этих условий верны:

  • Сообщение присутствует в очереди.

  • Значение данных сообщения равно 3.

Если сообщение не присутствует или если значение данных не равно 3, то значение x не изменяется. Если сообщение присутствует, удалите его из очереди независимо от значения данных.

during:
   if receive(M) && M.data == 3
      x = x+1;
   end

Stateflow chart that uses the receive operator.

Введенный в R2015b