cancel

Остановите функцию, запускающуюся в фоновом режиме

    Синтаксис

    Описание

    пример

    cancel(F) остановки каждый или рабочий элемент с очередями Future массив F.

    Для каждого элемента F это не имеет State свойство 'finished', cancel устанавливает State свойство к 'finished'. Все отменили Future элементы указывают на отмененное выполнение в Error свойство.

    Вы не можете прервать некоторые функции и операции путем нажатия Ctrl+C, такой как save. Когда вы используете parfeval или parfevalOnAll запускать эти функции, cancel не может остановить эти фьючерсы. Используйте delete (Parallel Computing Toolbox), чтобы закрыть пул и обеспечить MATLAB® остановить любые рабочие функции и операции.

    Примечание

    Используя delete с фоном не рекомендуется пул.

    Примеры

    свернуть все

    В этом примере показано, как остановить функцию MATLAB, которую вы запускаете в фоновом режиме. Когда вы используете parfeval чтобы запустить функцию в фоновом режиме, MATLAB сразу возвращает Future объект. Продолжительные функции могут блокировать другие функции от выполнения в фоновом режиме. Чтобы мешать функции запуститься, необходимо использовать cancel функция вместо того, чтобы выбор Live Editor> Run> Stop.

    Используйте parfeval запускать pause(Inf) не получая выходных параметров. Задайте backgroundPool в качестве первого аргумента, который запустит функцию в фоновом режиме. Когда вы используете parfeval, вы создаете Future объект.

    f = parfeval(backgroundPool,@pause,0,Inf);

    Проверяйте состояние Future объект.

    f.State
    ans = 
    'running'
    

    Когда вы запускаете parfeval, вы планируете функцию, чтобы запуститься в фоновом режиме. Когда фоновый пул имеет недостаточные ресурсы, чтобы запустить функцию, Future находится в 'queued' состояние. Когда функция запущена фоновым пулом, Future находится в 'running' состояние.

    Чтобы мешать функции запуститься в фоновом режиме, отмените Future объект.

    cancel(f)
    f.State
    ans = 
    'finished'
    

    Функция находится теперь в 'finished' состояние.

    Входные параметры

    свернуть все

    Введите FutureВ виде parallel.Future скаляр или массив.

    Пример: F = parfeval(backgroundPool,@magic,1,3);

    Смотрите также

    | | | |