gpt4 book ai didi

Matlab的日记+作业调度器

转载 作者:行者123 更新时间:2023-12-02 04:29:22 26 4
gpt4 key购买 nike

我想用 diary(‘log.txt’) 创建一个日志文件。

脚本使用 createJob()+createTask() 或 batch() 作为作业运行。

创建了 log.txt,但没有在 log.txt 中写入任何内容。

测试代码a.m:

c = parcluster;
j = createJob(c);
createTask(j, @b, 0, {});
submit(j);

b.m:

function [] = b()
diary off
delete b.txt
diary b.txt
disp('hello')
diary off
end

除了这个,还有什么方便的方法可以在工作中开启日记功能吗https://ww2.mathworks.cn/help/distcomp/diary.html

最佳答案

使用 Parallel Computing Toolbox 提交的作业可以自动捕获日记输出,而不是将 diary 与文件一起使用。此输出会随着执行的进行而更新。如果您使用 batch 创建作业命令,默认捕获日记输出。这是一个可以演示正在更新的日记输出的示例:

function [] = b()
for ii = 1:10
fprintf('hello: %d\n', ii);
pause(2);
end
end

然后像这样调用它:

j = batch(@b, 0);
wait(j, 'running');
while ~strcmp(j.State, 'finished')
diary(j)
pause(2)
end

(注意 batch 的第二个输入是从 b 请求的输出参数的数量)。这会导致如下所示的输出被打印到命令窗口:

Warning: The diary of this batch job might be incomplete because the job is still running. 
--- Start Diary ---
hello: 1
hello: 2
hello: 3
hello: 4

--- End Diary ---

关于Matlab的日记+作业调度器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50558459/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com