Skip to content

File SolidSyslogPassthroughBuffer.h

FileList > Core > Interface > SolidSyslogPassthroughBuffer.h

Go to the source code of this file

The no-queue Buffer. More...

  • #include "ExternC.h"

Public Functions

Type Name
struct SolidSyslogBuffer * SolidSyslogPassthroughBuffer_Create (struct SolidSyslogSender * sender)
The no-queue Buffer: Write sends inline through sender , so SolidSyslog_Log blocks until the send returns and Service has nothing to drain.
void SolidSyslogPassthroughBuffer_Destroy (struct SolidSyslogBuffer * base)
Release the pool slot; does not destroy the injected sender.

Detailed Description

Write forwards the record straight to the injected sender inline, so SolidSyslog_Log blocks on the send and returns only once it completes; Read always reports empty because nothing is ever queued, so Service has nothing to drain. This is the simplest wiring for a single-task setup with no store-and-forward — no ring, no mutex, no background drain. The cost is that a slow or blocking sender stalls the logging thread.

Public Functions Documentation

function SolidSyslogPassthroughBuffer_Create

The no-queue Buffer: Write sends inline through sender , so SolidSyslog_Log blocks until the send returns and Service has nothing to drain.

struct SolidSyslogBuffer * SolidSyslogPassthroughBuffer_Create (
    struct SolidSyslogSender * sender
) 

Suits single-task setups with no store-and-forward. sender must outlive the buffer. A NULL sender, or an exhausted pool, falls back to the shared NullBuffer.


function SolidSyslogPassthroughBuffer_Destroy

Release the pool slot; does not destroy the injected sender.

void SolidSyslogPassthroughBuffer_Destroy (
    struct SolidSyslogBuffer * base
) 



The documentation for this class was generated from the following file Core/Interface/SolidSyslogPassthroughBuffer.h