필터 지우기
필터 지우기

How to use Task.Diary

조회 수: 3 (최근 30일)
Xinyi Shen
Xinyi Shen 2014년 5월 25일
편집: Xinyi Shen 2014년 6월 8일
Hi, I have difficulty in outputting information to matlab command window when multi-task are running. Specifically I am using a independent multi-task parallel mode. Below is the way I created my multi-task within one job
parallel.defaultClusterProfile('local');
cluster = parcluster();
job = createJob(cluster);
createTask(job, funcHandles, numArray, args,'CaptureDiary',true);
submit(job);
wait(job);
results = fetchOutputs(job);
Within each funcHandle, I want to output some text during the execution. It is said that after matlab 2012b, this functionality is enabled through parallel.Task.Diary property. However, I can neither get nor set such property during the running of the task.There is completely no examples or explanation on how to access this property at all.
I know that I can output the info into a log file. But I still prefer to display something in the command window.
Can anyone help me? Thank you.

채택된 답변

Edric Ellis
Edric Ellis 2014년 6월 2일
The task "diary" property is updated automatically when your task function would emit text to the command window. For example:
c = parcluster('local');
j = createJob(c);
t = createTask(j, @disp, 0, {magic(4)}, 'CaptureDiary', true);
submit(j);
wait(j);
t.Diary
  댓글 수: 5
Edric Ellis
Edric Ellis 2014년 6월 3일
You can execute "t.Diary" at any time - including before "wait(j)". So, you might do:
...
submit(j);
while ~strcmp(j.State, 'finished')
disp(t.Diary);
pause(5);
end
Of course, that will display the entire diary each time around the "while" loop. You might want to do something more sophisticated like checking the diary to display only the new lines.
Xinyi Shen
Xinyi Shen 2014년 6월 8일
편집: Xinyi Shen 2014년 6월 8일
That works. Thank you.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Entering Commands에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by