send
将数据发送到 DataQueue
或 PollableDataQueue
说明
示例
自动处理从后台发送的数据
此示例说明如何在当前 MATLAB 会话中自动处理从后台发送的数据。
创建一个 DataQueue
对象。在当前 MATLAB 会话中的 DataQueue
上接收到每个数据项后,系统会自动使用 disp
函数显示该数据项。
q = parallel.pool.DataQueue; afterEach(q,@disp);
在此示例末尾定义的辅助函数 magicWithSend
将幻方矩阵的总和发送给 DataQueue
或 PollableDataQueue
对象,然后返回该幻方矩阵。
使用 parfeval
和 backgroundPool
在后台运行 magicWithSend
函数。
f = parfeval(backgroundPool,@magicWithSend,1,q,3);
总和会先显示,然后您可从 future 对象(即函数)获取输出.要从后台检索输出,请使用 fetchOutputs
。一旦 magicWithSend
执行完毕,MATLAB 会返回输出。
fetchOutputs(f)
ans = 3×3
8 1 6
3 5 7
4 9 2
定义辅助函数
定义辅助函数 magicWithSend
。该函数创建一个幻方矩阵,然后将幻方矩阵的总和发送到 DataQueue
或 PollableDataQueue
对象。在发送总和后,该函数返回该幻方矩阵。
function X = magicWithSend(q,n) X = magic(n); s = sum(X,'all'); send(q,s); end
输入参数
q
— 队列
parallel.pool.DataQueue
对象 | parallel.pool.PollableDataQueue
对象
队列,指定为 parallel.pool.DataQueue
或 parallel.pool.PollableDataQueue
对象。
如果
q
是PollableDataQueue
,请使用poll
在当前 MATLAB 会话中收到数据后手动检索数据。
示例: q = parallel.pool.DataQueue
示例: q = parallel.pool.PollableDataQueue
data
— 要发送的数据
标量 | 向量 | 矩阵 | 多维数组
要发送的数据,指定为标量、向量、矩阵或多维数组。
示例: send(q,"A message");
示例: send(q,magic(3));
版本历史记录
在 R2017a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)