source_link_manager 개체는 ISource 블록에 대한 메시징 블록 네트워크 연결을 관리합니다.
구문
template<class _LinkRegistry>
class source_link_manager;
매개 변수
_LinkRegistry
네트워크 링크 레지스트리입니다.
멤버
공용 Typedefs
| 속성 | 설명 |
|---|---|
const_pointer |
개체의 요소에 대한 포인터를 const 제공하는 형식입니다 source_link_manager . |
const_reference |
const 연산을 읽고 수행하기 위해 const 개체에 source_link_manager 저장된 요소에 대한 참조를 제공하는 형식입니다. |
iterator |
개체의 모든 요소를 읽거나 수정할 수 있는 source_link_manager 반복기를 제공하는 형식입니다. |
type |
개체에서 관리되는 링크 레지스트리의 source_link_manager 유형입니다. |
공용 생성자
| 속성 | 설명 |
|---|---|
| source_link_manager | source_link_manager 개체를 생성합니다. |
| ~source_link_manager 소멸자 | 개체를 source_link_manager 삭제합니다. |
공용 메서드
| 이름 | 설명 |
|---|---|
| add | 개체에 소스 링크를 source_link_manager 추가합니다. |
| begin | 개체의 첫 번째 요소에 source_link_manager 반복기를 반환합니다. |
| contains | network_link_registry 이 source_link_manager 개체 내에서 지정된 블록을 검색합니다. |
| count | 개체의 연결된 블록 source_link_manager 수를 계산합니다. |
| reference | 개체에 대한 참조를 가져옵니다 source_link_manager . |
| register_target_block | 이 source_link_manager 개체를 보유하는 대상 블록을 등록합니다. |
| release | 개체에 대한 참조를 해제 source_link_manager 합니다. |
| remove | 개체에서 source_link_manager 링크를 제거합니다. |
| set_bound | 이 source_link_manager 개체에 추가할 수 있는 소스 링크의 최대 수를 설정합니다. |
설명
현재 소스 블록은 참조 횟수가 계산됩니다. 이는 링크에 대한 network_link_registry 동시 액세스를 허용하고 콜백을 통해 링크를 참조하는 기능을 제공하는 개체의 래퍼입니다. 메시지 블록(target_blocks 또는 propagator_blocks)은 원본 링크에 이 클래스를 사용해야 합니다.
상속 계층 구조
source_link_manager
요구 사항
헤더: agents.h
네임스페이스: 동시성
추가
개체에 소스 링크를 source_link_manager 추가합니다.
void add(_EType _Link);
매개 변수
_링크
추가할 블록에 대한 포인터입니다.
begin
개체의 첫 번째 요소에 source_link_manager 반복기를 반환합니다.
iterator begin();
Return Value
개체의 첫 번째 요소 source_link_manager 주소를 지정하는 반복기입니다.
설명
반복기의 끝 상태는 링크로 NULL 표시됩니다.
contains
network_link_registry 이 source_link_manager 개체 내에서 지정된 블록을 검색합니다.
bool contains(_EType _Link);
매개 변수
_링크
개체에서 검색할 블록에 대한 source_link_manager 포인터입니다.
Return Value
true 지정된 블록을 찾았 false 으면 그렇지 않습니다.
count
개체의 연결된 블록 source_link_manager 수를 계산합니다.
size_t count();
Return Value
개체의 연결된 블록 수입니다 source_link_manager .
reference
개체에 대한 참조를 가져옵니다 source_link_manager .
void reference();
register_target_block
이 source_link_manager 개체를 보유하는 대상 블록을 등록합니다.
void register_target_block(_Inout_ ITarget<typename _Block::source_type>* _PTarget);
매개 변수
_PTarget
이 source_link_manager 개체를 보유하는 대상 블록입니다.
릴리스
개체에 대한 참조를 해제 source_link_manager 합니다.
void release();
remove
개체에서 source_link_manager 링크를 제거합니다.
bool remove(_EType _Link);
매개 변수
_링크
제거할 블록에 대한 포인터입니다(있는 경우).
Return Value
true 링크가 발견되고 제거되었 false 으면 그렇지 않습니다.
set_bound
이 source_link_manager 개체에 추가할 수 있는 소스 링크의 최대 수를 설정합니다.
void set_bound(size_t _MaxLinks);
매개 변수
_MaxLinks
최대 링크 수입니다.
source_link_manager
source_link_manager 개체를 생성합니다.
source_link_manager();
~source_link_manager
개체를 source_link_manager 삭제합니다.
~source_link_manager();
참고 항목
concurrency 네임스페이스
single_link_registry 클래스
multi_link_registry 클래스