Блокируйте выполнение и ожидайте условия
waitfor(
операторы блоков от выполнения до заданных объектных завершений (удален). Когда объект больше не существует, obj
)waitfor
возвращается, позволяя выполнению возобновиться. Если объект не существует, waitfor
сразу возвращается.
waitfor(
задает имя свойства объекта и блокирует выполнение до значения изменений свойства или объектных завершений. Например, obj
,propname
)waitfor(mytable,'Data')
приостанавливает выполнение до значения 'Data'
изменения для mytable
. Если заданное имя свойства недопустимо, выполнение остается блокированным.
Если вы закрываете фигуру в то время как waitfor
выполняется, ошибка происходит, потому что код пытается получить доступ к объектам, которые больше не существуют. Можно обработать ошибку путем включения waitfor
в try/catch
блок.
Как правило, коллбэки могут все еще запуститься если waitfor
использовался, чтобы препятствовать тому, чтобы программы или модели Simulink® продолжили выполнение. Например, коллбэки, которые отвечают на пользовательские действия (как нажатие кнопки мыши) могут все еще запуститься даже если waitfor
был назван.
waitfor
может также использоваться, чтобы блокировать вызовы вложенной функции. Например, коллбэк, который выполняется в то время как waitfor
функция запускается, может также вызвать waitfor
.
Если функция обратного вызова компонента пользовательского интерфейса является выполняющимся в данным моментом waitfor
функция, затем тот коллбэк может быть прерван независимо от какой Interruptible
значение свойства для того компонента было установлено в.