主要内容

发送

使用数据队列从工作人员发送数据到客户端

描述

例子

发送(队列数据发送带有该值的消息或数据数据parallel.pool.DataQueue指定的队列.调用afterEach将每个挂起消息传递给指定的函数afterEach

例子

发送(pollablequeue数据发送带有该值的消息或数据数据parallel.pool.PollableDataQueue指定的pollablequeue.使用以下方法检索结果民意调查(pollablequeue),然后返回数据作为答案。

使用发送民意调查使用可轮询的数据队列来从不同的工作人员传输和检索消息或数据。

例子

全部折叠

构造一个DataQueue,叫afterEach

q = parallel.pool.DataQueue;afterEach (q, @disp);
开始一个parfor-loop,并发送消息。挂起的消息被传递给afterEach函数@disp

parforI = 1:3 send(q, I);结束
1 2 3

要了解更多关于使用DataQueue,请参阅afterEach

构造一个PollableDataQueue

p = parallel.pool.PollableDataQueue;
开始一个parfor-loop,并发送消息,例如值为1的数据。
parforI = 1 send(p, I);结束
投票决定结果。

调查(p)
1

以获取有关使用PollableDataQueue,请参阅民意调查

这个例子展示了一个创建parfor等待吧。创建一个DataQueue,并使用afterEach指定每次队列接收数据时要执行的函数。这个例子调用一个子函数来更新等待条。

创建一个parfor在MATLAB中执行一个计算要求很高的任务®.使用发送的每次迭代发送一些虚拟数据parfor循环。当队列接收到数据时,afterEach调用nUpdateWaitbar在客户端MATLAB中,可以观察到等待条的进度。

函数a = parforWaitbar D = parallel.pool.DataQueue;h = waitbar (0,“请等待…”);afterEach (D, @nUpdateWaitbar);N = 200;p = 1;parfori = 1:N a(i) = max(abs(eig(rand(400))));发送(D,我);结束函数nUpdateWaitbar (~) waitbar (p / N、h);P = P + 1;结束结束

输入参数

全部折叠

数据队列,指定为parallel.pool.DataQueue对象。

例子:q = parallel.pool.DataQueue;

从工作人员到数据队列的消息或数据,指定为任何可序列化的数据类型。

例子:发送(队列、数据);

可轮询数据队列,指定为parallel.pool.PollableDataQueue对象。

例子:p = parallel.pool.PollableDataQueue;

介绍了R2017a