fetchOutputs
从作业中的所有任务中检索输出参量
说明
检索已完成作业的任务中包含的输出参量。data = fetchOutputs(j)
当您从使用 createJob 或 createCommunicatingJob 创建的作业中检索输出时,m×n 元胞数组 data 的每一行都包含作业中每个 m 任务的输出参量。data 中的每一行都有 n 个元素,其中 n 是作业中任何一个任务的输出参量的最大数量。一行的 n 元素是包含该任务的输出参量的数组。如果某个任务的输出参量少于 n 个,则该任务行中的多余元素为空。
当您从使用 batch 创建的作业中检索输出时:
如果使用
fcn语法创建批处理作业并指定N输出,则data是一个1×N元胞数组。如果使用
script或expression语法创建批处理作业,则data是一个包含结构体标量的1×1元胞数组。如果在创建批处理作业时指定Pool参量,则结构体标量将包含充当客户端的工作单元的工作区。否则,结构体标量包含运行该作业的工作单元的工作空间。
作业的输出数据存储在作业运行的集群的 JobStorageLocation 属性指定的位置。当您运行 fetchOutputs 时,输出数据不会从 JobStorageLocation 中删除。要删除输出数据,请使用 delete 函数删除单个任务或整个作业。
如果出现以下情况,fetchOutputs 函数将会抛出错误:
作业
j的State属性不是'finished'。作业
j的State属性为'finished',并且作业j的Tasks属性给出的任务之一遇到错误。
提示
要查看作业 j 上的任何任务是否在遇到错误后失败,请检查 j.Tasks.Error 是否为空。如果返回的数组为空,则表示作业 j 上的所有任务均未遇到任何错误。
如果某些任务成功完成,您可以使用任务的 OutputArguments 属性直接访问该任务的输出参量。
示例
输入参数
版本历史记录
在 R2012a 中推出