61class LASS_DLL BinaryOSocket:
public BinaryOStream
65 BinaryOSocket(
size_t bufferSize = 0,
unsigned long flushPeriod = 100);
66 BinaryOSocket(
Socket* socket,
size_t bufferSize = 0,
unsigned long flushPeriod = 100);
74 typedef std::vector<char> TBuffer;
76 pos_type doTellp()
const override;
77 void doSeekp(pos_type position)
override;
78 void doSeekp(off_type iOffset, std::ios_base::seekdir iDirection)
override;
79 size_t doWrite(
const void* iBytes,
size_t iNumberOfBytes)
override;
80 void doFlush()
override;
88 size_t requestedBufferSize_;
92 std::unique_ptr<util::Thread> flushThread_;
93 unsigned long flushPeriod_;
94 std::atomic<bool> stopFlushThread_;
95 std::atomic<bool> skipABeat_;