MATLAB ヘルプ センター
このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
データを DataQueue または PollableDataQueue に送信
DataQueue
PollableDataQueue
send(q,data)
send(q,data) は、値 data をもつデータの項目をキュー q に送信します。バックグラウンドまたは現在の MATLAB® セッションからデータを送信します。
q
data
Parallel Computing Toolbox™ がある場合、並列プールで実行する関数からデータを送信できます。詳細については、send (Parallel Computing Toolbox) を参照してください。
send
例
すべて折りたたむ
この例では、バックグラウンドから送信したデータを現在の MATLAB セッションで自動的に処理する方法を示します。
DataQueue オブジェクトを作成します。現在の MATLAB セッションにおいて、それぞれのデータの項目を DataQueue で受信した後に、その項目を関数 disp を使用して自動的に表示します。
disp
q = parallel.pool.DataQueue; afterEach(q,@disp);
この例の最後で定義されている補助関数 magicWithSend は、魔方陣の和を DataQueue オブジェクトまたは PollableDataQueue オブジェクトに送信してから、その魔方陣を返します。
magicWithSend
parfeval と backgroundPool を使用して関数 magicWithSend をバックグラウンドで実行します。
parfeval
backgroundPool
f = parfeval(backgroundPool,@magicWithSend,1,q,3);
future から出力を取得するよりも先に和が表示されます。バックグラウンドから出力を取得するには、fetchOutputs を使用します。magicWithSend の実行が完了すると、MATLAB は出力を返します。
fetchOutputs
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
parallel.pool.DataQueue
parallel.pool.PollableDataQueue
キュー。parallel.pool.DataQueue オブジェクトまたは parallel.pool.PollableDataQueue オブジェクトとして指定します。
q が DataQueue の場合、現在の MATLAB セッションでデータを受信したときに afterEach を使用して自動的にデータを処理します。
afterEach
q が PollableDataQueue の場合、現在の MATLAB セッションでデータを受信した後に poll を使用して手動でデータを取得します。
poll
例: q = parallel.pool.DataQueue
q = parallel.pool.DataQueue
例: q = parallel.pool.PollableDataQueue
q = parallel.pool.PollableDataQueue
送信するデータ。スカラー、ベクトル、行列、または多次元配列として指定します。
例: send(q,"A message");
send(q,"A message");
例: send(q,magic(3));
send(q,magic(3));
すべて展開する
ThreadPool
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
R2017a で導入
afterEach | poll | parfor | parallel.pool.DataQueue | parallel.pool.PollableDataQueue
parfor
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ