Namespaces
Variants

std::basic_syncbuf<CharT,Traits,Allocator>:: emit

From cppreference.net
bool emit ( ) ;

래핑된 스트림으로 모든 대기 중인 출력을 원자적으로 전송합니다.

동일한 래핑된 스트림 버퍼 객체로 문자를 전송하는 모든 emit ( ) 호출은 전체 순서로 실행되는 것으로 보이며, 여기서 각 emit ( ) 호출은 해당 전체 순서에서 후속 emit ( ) 호출과 동기화됩니다 . 이러한 호출이 서로 다른 std::basic_syncbuf / std::basic_osyncstream 인스턴스를 통해 이루어지더라도 마찬가지입니다. 실제로 이는 emit()이 래핑된 스트림 객체와 고유하게 연관된 락을 획득함을 의미합니다: 예를 들어, 래핑된 스트림의 주소를 키로 사용하는 정적 해시 맵에 보관될 수 있습니다.

마지막으로 emit ( ) 호출 이후 sync 호출이 있었다면, 래핑된 스트림에 pubsync() 를 호출하여 해당 스트림도 플러시합니다.

목차

매개변수

(없음)

반환값

true 다음 조건이 모두 참일 경우:

  • 래핑된 스트림이 존재합니다(래핑된 streambuf 포인터가 null이 아님)
  • 임시 저장소의 모든 문자가 래핑된 스트림으로 성공적으로 전송되었습니다
  • 요청된 경우 pubsync() 호출도 성공적으로 완료되었습니다.

그렇지 않으면 false 를 반환합니다.

참고 사항

일반적으로 소유하는 std::basic_osyncstream 의 소멸자나 이동 할당 연산자에 의해, 또는 std::basic_osyncstream::emit 에 의해 호출됩니다.

예제

참고 항목

basic_osyncstream 을 파괴하고 내부 버퍼를 방출함
( std::basic_osyncstream<CharT,Traits,Allocator> 의 public member function)
기본 basic_syncbuf 에서 emit() 을 호출하여 내부 데이터를 최종 목적지로 전송함
( std::basic_osyncstream<CharT,Traits,Allocator> 의 public member function)
basic_syncbuf 객체를 생성함
(public member function)