source_link_manager 클래스
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_block
s 또는 propagator_block
s)은 원본 링크에 이 클래스를 사용해야 합니다.
상속 계층 구조
source_link_manager
요구 사항
헤더: agents.h
네임스페이스: 동시성
add
개체에 소스 링크를 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 클래스