table of contents
        
      
      
    | std::basic_syncbuf::emit(3) | C++ Standard Libary | std::basic_syncbuf::emit(3) | 
NAME¶
std::basic_syncbuf::emit - std::basic_syncbuf::emit
Synopsis¶
bool emit();
  
   Atomically transmits all pending output to the wrapped stream.
  
   All emit() calls transferring characters to the same wrapped stream buffer
    object
  
   appear to execute in a total order, where each emit() call synchronizes-with
  
   subsequent emit() calls in that total order, even if these calls are made
    through
  
   difference instances of std::basic_syncbuf/std::basic_osyncstream. In
    practice, this
  
   means that emit() takes a lock uniquely associated with the wrapped stream
    object:
  
   for example, it could be held in a static hash map where the address of the
    wrapped
  
   stream is used as the key.
  
   If a call had been made to sync since the last call to emit(), then also
    flushes the
  
   wrapped stream by calling pubsync() on it.
Parameters¶
(none)
Return value¶
true if all of the following is true:
  
   * there is a wrapped stream (the wrapped streambuf pointer is not null)
  
   * all characters from the temporary storage were successfully sent into the
  
   wrapped stream
  
   * the call to pubsync(), if requested, also completed successfully.
  
   Returns false otherwise.
Notes¶
 Normally called by the destructor of the owning
    std::basic_osyncstream or by
  
   std::basic_osyncstream::emit.
Example¶
 This section is incomplete
  
   Reason: no example
See also¶
 destroys the basic_osyncstream and emits its internal buffer
  
   destructor (public member function of
  
   std::basic_osyncstream<CharT,Traits,Allocator>)
  
   calls emit on the underlying basic_syncbuf to transmit its internal
  
   emit data to the final destination
  
   (public member function of
  
   std::basic_osyncstream<CharT,Traits,Allocator>)
  
   constructor constructs a basic_syncbuf object
  
   (public member function)
| 2022.07.31 | http://cppreference.com |