class DeferredBufferForwarder

Defined at line 19 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.h

A version of the BufferForwarder which first buffers to the local filesystem before flushing to

the resulting socked

Public Members

static const size_t kDefaultTransferBufferSize

Protected Members

bool flushed_

Public Methods

void DeferredBufferForwarder (zx::socket destination, size_t transfer_buffer_size, size_t backpressure_percentage)

Defined at line 19 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.cc

size_t transfer_buffer_size ()

Get or set the transfer buffer size for controlled batching during flush.

Defined at line 30 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.h

void set_transfer_buffer_size (size_t size)

Defined at line 31 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.h

TransferStatus Flush ()

Defined at line 47 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.cc

void ~DeferredBufferForwarder ()

Defined at line 38 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.cc

Protected Methods

TransferStatus WriteBuffer (cpp20::span<const uint8_t> data)

Writes the contents of |data| to a temporary location on disk. Data can then be flushed to the

socket once the trace is complete.

Returns TransferStatus::kComplete if the entire buffer has been

successfully transferred. A return value of

TransferStatus::kReceiverDead indicates that the peer was closed

during the transfer.

Defined at line 86 of file ../../src/performance/trace_manager/deferred_buffer_forwarder.cc