std::basic_syncbuf<CharT,Traits,Allocator>:: emit
|
bool
emit
(
)
;
|
||
Überträgt alle ausstehenden Ausgaben atomar an den umschlossenen Stream.
Alle emit ( ) Aufrufe, die Zeichen an denselben umschlossenen Streampuffer-Objekt übertragen, scheinen in einer Gesamtordnung ausgeführt zu werden, wobei jeder emit ( ) Aufruf synchronisiert mit nachfolgenden emit ( ) Aufrufen in dieser Gesamtordnung, selbst wenn diese Aufrufe durch unterschiedliche Instanzen von std::basic_syncbuf / std::basic_osyncstream erfolgen. In der Praxis bedeutet dies, dass emit() eine Sperre übernimmt, die eindeutig mit dem umschlossenen Stream-Objekt assoziiert ist: Beispielsweise könnte sie in einer statischen Hash-Map gehalten werden, wobei die Adresse des umschlossenen Streams als Schlüssel verwendet wird.
Wenn seit dem letzten Aufruf von sync ein Aufruf von emit ( ) erfolgt ist, dann leert es ebenfalls den zugrunde liegenden Stream durch Aufruf von pubsync() auf diesem.
Inhaltsverzeichnis |
Parameter
(keine)
Rückgabewert
true wenn alle folgenden Bedingungen zutreffen:
- es gibt einen umschlossenen Stream (der Zeiger auf den umschlossenen Streambuf ist nicht null)
- alle Zeichen aus dem temporären Speicher wurden erfolgreich in den umschlossenen Stream übertragen
- der Aufruf von pubsync() , falls angefordert, wurde ebenfalls erfolgreich abgeschlossen.
Gibt false zurück.
Hinweise
Normalerweise aufgerufen durch den Destruktor oder die Move-Zuweisung des besitzenden std::basic_osyncstream , oder durch std::basic_osyncstream::emit .
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Siehe auch
zerstört den
basic_osyncstream
und gibt seinen internen Puffer aus
(öffentliche Elementfunktion von
std::basic_osyncstream<CharT,Traits,Allocator>
)
|
|
ruft
emit()
auf dem zugrundeliegenden
basic_syncbuf
auf, um seine internen Daten zum endgültigen Ziel zu übertragen
(öffentliche Elementfunktion von
std::basic_osyncstream<CharT,Traits,Allocator>
)
|
|
konstruiert ein
basic_syncbuf
Objekt
(öffentliche Elementfunktion) |