broadcast_node
[flow_graph.broadcast_node]
受け取ったメッセージをすべての後続 (サクセサー) にブロードキャストするノード。
// <oneapi/tbb/flow_graph.h> ヘッダーで定義
namespace oneapi {
namespace tbb {
namespace flow {
template< typename T >
class broadcast_node :
public graph_node, public receiver<T>, public sender<T> {
public:
explicit broadcast_node( graph &g );
broadcast_node( const broadcast_node &src );
bool try_put( const T &v );
bool try_get( T &v );
};
} // namespace flow
} // namespace tbb
} //namespace oneapi
broadcast_node
は、graph_node
、receiver<T>
、および sender<T>
です。
broadcast_node
には、discarding と broadcast-push プロパティーがあります。
すべてのメッセージは、即座に後続 (サクセサー) へ転送されます。
メンバー関数
- explicit broadcast_node(graph &g)
グラフ
g
に属するbroadcast_node
タイプのオブジェクトを構築します。
- broadcast_node(const broadcast_node &src)
src
と同じグラフg
に属するbroadcast_node
タイプのオブジェクトを構築します。先行リストと後続リストはコピーされません。
- bool try_put(const input_type &v)
すべてのサクセサーに
v
をブロードキャストします。戻り値: メッセージを後続に転送できなかった場合でも常に
true
を返します。
- bool try_get(output_type &v)
戻り値:
false
。