labSendReceive
(非推奨) spmd
ブロックの 1 つのワーカーでデータの送受信を同時に行う
labSendReceive
は推奨されません。代わりに spmdSendReceive
を使用してください。詳細については、バージョン履歴を参照してください。
説明
B = labSendReceive(
は、destination
,source
,A
)spmd
ブロックまたは通信ジョブの現在のワーカーからデータを destination
に送信し、source
からデータを受信します。配列 A
は、現在のワーカーから、labindex
が destination
と等しいワーカーへと送信されます。現在のワーカーは、labindex
が source
と等しいワーカーからデータを受信します。
ワーカーが labSendReceive(destination,source,A)
を実行すると、ワーカーで次のコードを実行する計算と等価になりますが、送信と受信を同時に実施できます。
labSend(A,destination); B = labReceive(source);
B = labSendReceive(___,
は、タグ tag
)tag
が付いたデータを送受信します。labSendReceive
を使用してワーカー間でデータを送信する場合、データの複数の項目が収集されるのを待機することができます。データの複数の項目をワーカーに送信する場合、各項目にタグを付加して項目間の区別をつけます。