主要内容

backgroundPool

环境在后台运行代码

自从R2021b

    描述

    使用背景池在后台运行代码。当您运行在后台代码,您可以运行在MATLAB其他代码®会议在同一时间。

    创建

    描述

    例子

    p= backgroundPool返回背景池。

    属性

    全部展开

    这个属性是只读的。

    队列的FevalFuture对象池运行在后台,指定为一个FevalQueue对象。您可以使用这个属性来检查并行的等待和未来运行变量池。创造未来的变量,使用parfeval(并行计算工具箱)parfevalOnAll(并行计算工具箱)。关于未来的变量的更多信息,请参阅未来

    数据类型:FevalQueue

    这个属性是只读的。

    工人数量,指定为一个正整数标量。

    • 如果你没有并行计算工具箱™的许可证,该值1

    • 如果你有一个许可证并行计算工具箱,NumWorkers等于物理处理器的数量。例如,如果一台机器上运行MATLAB和四个物理核心,价值是多少4。你可以降低这个值使用maxNumCompThreads在第一次使用之前backgroundPool

    这个属性是只读的。

    国旗表明背景池是否忙,指定为真正的。池很忙如果有未完成的工作,来完成。

    对象的功能

    parfeval 在后台运行功能
    parfevalOnAll(并行计算工具箱) 并行执行异步函数对所有工人池

    例子

    全部折叠

    这个例子展示了如何在后台运行一个函数使用parfevalbackgroundPool。当你在后台运行一个函数,您可以运行其他MATLAB®代码在同一时间。

    使用parfeval运行函数魔法(3)和检索一个输出。指定backgroundPool作为第一个参数在后台运行功能。当你使用parfeval,您可以创建一个未来对象。

    f = parfeval (backgroundPool @magic 1、3);

    检索的输出背景,使用fetchOutputs。MATLAB的执行返回输出一次魔法就完成了。

    fetchOutputs (f)
    ans =3×38 1 6 3 5 7 4 9 2

    这个例子展示了如何阅读图像从一个亚马逊®S3 bucket的背景。

    使用一个图像数据存储连接到你的桶。有关如何设置的更多信息访问S3 bucket,明白了使用远程数据

    取代“s3: / / MyBucket /数据”与一个URL S3 bucket数据文件夹。

    ds = imageDatastore (“s3: / / MyBucket /数据”);

    使用parfeval从S3 bucket读取数据。指定backgroundPool作为第一个参数在后台运行功能。然后,阅读所有的数据存储的数据。

    f = parfeval (backgroundPool @readall 1 ds);

    您可以运行其他功能时从S3 bucket下载数据。检索所有的图像从背景中,使用fetchOutputs。MATLAB的执行返回输出一次readall就完成了。

    T = fetchOutputs (f);imout = imtile (T);imshow (imout)

    限制

    • 池创建使用parpool(“线程”)backgroundPool都是线程池使用相同的资源。有可能是活动在一个池可能会阻止活动,反之亦然。此外,持久数据和随机数生成流状态之间共享这些池。控制随机数流的更多信息,请参阅控制随机数流工人(并行计算工具箱)

    版本历史

    介绍了R2021b