| description | Learn more about: multi_link_registry Class | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| title | multi_link_registry Class | |||||||||
| ms.date | 11/04/2016 | |||||||||
| f1_keywords |
|
|||||||||
| helpviewer_keywords |
|
|||||||||
| ms.assetid | b2aa73a8-e8a6-4255-b117-d07530c328b2 |
The multi_link_registry object is a network_link_registry that manages multiple source blocks or multiple target blocks.
template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;_Block
The block data type being stored in the multi_link_registry object.
| Name | Description |
|---|---|
| multi_link_registry | Constructs a multi_link_registry object. |
| ~multi_link_registry Destructor | Destroys the multi_link_registry object. |
| Name | Description |
|---|---|
| add | Adds a link to the multi_link_registry object. (Overrides network_link_registry::add.) |
| begin | Returns an iterator to the first element in the multi_link_registry object. (Overrides network_link_registry::begin.) |
| contains | Searches the multi_link_registry object for a specified block. (Overrides network_link_registry::contains.) |
| count | Counts the number of items in the multi_link_registry object. (Overrides network_link_registry::count.) |
| remove | Removes a link from the multi_link_registry object. (Overrides network_link_registry::remove.) |
| set_bound | Sets an upper bound on the number of links that the multi_link_registry object can hold. |
multi_link_registry
Header: agents.h
Namespace: concurrency
Adds a link to the multi_link_registry object.
virtual void add(_EType _Link);_Link
A pointer to a block to be added.
The method throws an invalid_link_target exception if the link is already present in the registry, or if a bound has already been set with the set_bound function and a link has since been removed.
Returns an iterator to the first element in the multi_link_registry object.
virtual iterator begin();An iterator addressing the first element in the multi_link_registry object.
The end state is indicated by a NULL link.
Searches the multi_link_registry object for a specified block.
virtual bool contains(_EType _Link);_Link
A pointer to a block that is to be searched for in the multi_link_registry object.
true if the specified block was found, false otherwise.
Counts the number of items in the multi_link_registry object.
virtual size_t count();The number of items in the multi_link_registry object.
Constructs a multi_link_registry object.
multi_link_registry();Destroys the multi_link_registry object.
virtual ~multi_link_registry();The method throws an invalid_operation exception if called before all links are removed.
Removes a link from the multi_link_registry object.
virtual bool remove(_EType _Link);_Link
A pointer to a block to be removed, if found.
true if the link was found and removed, false otherwise.
Sets an upper bound on the number of links that the multi_link_registry object can hold.
void set_bound(size_t _MaxLinks);_MaxLinks
The maximum number of links that the multi_link_registry object can hold.
After a bound is set, unlinking an entry will cause the multi_link_registry object to enter an immutable state where further calls to add will throw an invalid_link_target exception.