std::basic_syncbuf<CharT,Traits,Allocator>::emit
From cppreference.com
< cpp | io | basic syncbuf
| bool emit(); |
||
保留されているすべての出力をラップされたストリームにアトミックに送信します。
同じラップされたストリームバッファオブジェクトに文字を転送するすべての emit() 呼び出しは、全体的な順序で実行されるように見えます。その全体的な順序では、各 emit() 呼び出しは、後続の emit() 呼び出しと 同期 します。これは、これらの呼び出しが std::basic_syncbuf/std::basic_osyncstream の異なるインスタンスを通じて行われた場合でも同様です。実際には、これは emit() がラップされたストリームオブジェクトに一意に関連付けられたロックを取得することを意味します。たとえば、ラップされたストリームのアドレスがキーとして使用される静的なハッシュマップに保持される可能性があります。
最後に emit() が呼び出されてから sync が呼び出されていた場合、ラップされたストリームに対しても pubsync() を呼び出すことによってフラッシュします。
目次 |
[編集] パラメータ
(なし)
[編集] 戻り値
true 次のすべてが真である場合
- ラップされたストリームが存在する(ラップされたストリームバッファポインタはヌルではない)
- 一時ストレージのすべての文字が正常にラップされたストリームに送信された
- 要求された場合、pubsync() への呼び出しも正常に完了した。
それ以外の場合は false を返します。
[編集] 注記
通常、所有する std::basic_osyncstream のデストラクタまたはムーブ代入、あるいは std::basic_osyncstream::emit によって呼び出されます。
[編集] 例
| このセクションは未完成です 理由: 例がありません |
[編集] 関連項目
basic_osyncstream を破棄し、その内部バッファを出力する( std::basic_osyncstream<CharT,Traits,Allocator> の public メンバ関数) | |
基になる basic_syncbuf の emit() を呼び出して、内部データを最終的な宛先に転送します。( std::basic_osyncstream<CharT,Traits,Allocator> の public メンバ関数) | |
basic_syncbufオブジェクトを構築する(public メンバ関数) |