다음을 통해 공유


multi_link_registry 클래스

multi_link_registry 개체는 여러 소스 블록 또는 여러 대상 블록을 관리하는 network_link_registry입니다.

구문

template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;

매개 변수

_차단
개체에 저장되는 블록 데이터 형식입니다 multi_link_registry .

멤버

공용 생성자

속성 설명
multi_link_registry multi_link_registry 개체를 생성합니다.
~multi_link_registry 소멸자 개체를 multi_link_registry 삭제합니다.

공용 메서드

이름 설명
add 개체에 multi_link_registry 대한 링크를 추가합니다. (network_link_registry::add를 재정의합니다.)
begin 개체의 첫 번째 요소에 multi_link_registry 반복기를 반환합니다. (network_link_registry::begin을 재정의합니다.)
contains 개체에서 multi_link_registry 지정된 블록을 검색합니다. (network_link_registry::contains를 재정 의합니다.)
count 개체의 항목 multi_link_registry 수를 계산합니다. (network_link_registry::count를 재정의합니다.)
remove 개체에서 multi_link_registry 링크를 제거합니다. (network_link_registry::remove를 재정의합니다.)
set_bound 개체가 보유할 수 있는 링크 수에 상한을 multi_link_registry 설정합니다.

상속 계층 구조

network_link_registry

multi_link_registry

요구 사항

헤더: agents.h

네임스페이스: 동시성

add

개체에 multi_link_registry 대한 링크를 추가합니다.

virtual void add(_EType _Link);

매개 변수

_링크
추가할 블록에 대한 포인터입니다.

설명

이 메서드는 링크가 레지스트리에 이미 있거나 바인딩이 함수로 set_bound 이미 설정되어 있고 링크가 제거된 경우 invalid_link_target 예외를 throw 합니다.

begin

개체의 첫 번째 요소에 multi_link_registry 반복기를 반환합니다.

virtual iterator begin();

Return Value

개체의 첫 번째 요소 multi_link_registry 주소를 지정하는 반복기입니다.

설명

끝 상태는 링크로 NULL 표시됩니다.

contains

개체에서 multi_link_registry 지정된 블록을 검색합니다.

virtual bool contains(_EType _Link);

매개 변수

_링크
개체에서 검색할 블록에 대한 multi_link_registry 포인터입니다.

Return Value

true 지정된 블록을 찾았 false 으면 그렇지 않습니다.

count

개체의 항목 multi_link_registry 수를 계산합니다.

virtual size_t count();

Return Value

개체의 항목 수입니다 multi_link_registry .

multi_link_registry

multi_link_registry 개체를 생성합니다.

multi_link_registry();

~multi_link_registry

개체를 multi_link_registry 삭제합니다.

virtual ~multi_link_registry();

설명

모든 링크가 제거되기 전에 호출되는 경우 메서드는 invalid_operation 예외를 throw합니다.

remove

개체에서 multi_link_registry 링크를 제거합니다.

virtual bool remove(_EType _Link);

매개 변수

_링크
제거할 블록에 대한 포인터입니다(있는 경우).

Return Value

true 링크가 발견되고 제거되었 false 으면 그렇지 않습니다.

set_bound

개체가 보유할 수 있는 링크 수에 상한을 multi_link_registry 설정합니다.

void set_bound(size_t _MaxLinks);

매개 변수

_MaxLinks
개체가 보유할 수 있는 multi_link_registry 최대 링크 수입니다.

설명

한도가 설정된 후 항목의 연결을 해제하면 multi_link_registry 개체가 변경 불가능한 상태로 전환됩니다. 이 상태에서 add를 추가로 호출하면 invalid_link_target 예외가 throw됩니다.

참고 항목

concurrency 네임스페이스
single_link_registry 클래스