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_nodereceiver<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