parfeval
Этот пример показывает, как вы можете использовать parfeval
для оценки функции в фоновом режиме и сбора результатов по мере их появления. В этом примере вы отправляете вектор из нескольких будущих запросов в цикле for-loop и получаете отдельные выходы будущего, когда они становятся доступными.
p = gcp(); % To request multiple evaluations, use a loop. for idx = 1:10 f(idx) = parfeval(p,@magic,1,idx); % Square size determined by idx end % Collect the results as they become available. magicResults = cell(1,10); for idx = 1:10 % fetchNext blocks until next results are available. [completedIdx,value] = fetchNext(f); magicResults{completedIdx} = value; fprintf('Got result with index: %d.\n', completedIdx); end
Got result with index: 1. Got result with index: 2. Got result with index: 3. Got result with index: 4. Got result with index: 5. Got result with index: 6. Got result with index: 7. Got result with index: 8. Got result with index: 9. Got result with index: 10.