Struct LogMemoryManager
Interface for allocating and managing Payload buffers for Log
Inherited Members
Namespace: Unity.Logging
Assembly: solution.dll
Syntax
[BurstCompile]
[GenerateTestsForBurstCompatibility]
public struct LogMemoryManager
Remarks
A Payload buffer is allocated when creating a new log message, the actual message data, i.e. the "Payload", is serialized
into this buffer by the log producer. A Payload
Fields
Name | Description |
---|---|
Maximum |
Maximum value for Buffer |
Maximum |
Maximum value for Buffer |
Maximum |
Maximum value for Buffer |
Maximum |
Maximum value for Buffer |
Maximum |
Maximum value for Buffer |
Minimum |
Minimum value for Buffer |
Minimum |
Minimum value for Buffer |
Minimum |
Minimum value for Buffer |
Minimum |
Minimum value for Buffer |
Properties
Name | Description |
---|---|
Is |
Returns if this Log |
Parameters | Parameter values provided to Initialize(Log |
Methods
Name | Description |
---|---|
Allocate |
Allocates a new Disjointed buffer, which includes allocating the individual Payloads that make up the entire buffer. |
Allocate |
Allocates a new Disjointed buffer, which includes allocating the individual Payloads that make up the entire buffer. |
Allocate |
Allocates a new Disjointed buffer, which includes allocating the individual Payloads that make up the entire buffer. |
Allocate |
Allocates a new Payload buffer from the default Payload container. |
Allocate |
Allocates a new Payload buffer from the default Payload container. |
Create |
Creates a new Disjointed buffer that's composed of preallocated Payloads, instead of allocating new ones. |
Create |
Creates a new Disjointed buffer that's composed of preallocated Payloads, instead of allocating new ones. |
Create |
Creates a new Disjointed buffer that's composed of preallocated Payloads, instead of allocating new ones. |
Debug |
Debug function that returns information about Payload |
Debug |
Gathers the internal statistics of this Log |
From |
Converts pointer into ref LogMemoryManager |
Get |
Returns the Capacity of the current Payload container from which Payloads are allocated from. |
Get |
Returns the Usage of the current Payload container from which Payloads are allocated from. |
Initialize() | Initializes MemoryManager using default parameters. |
Initialize(Log |
Initializes MemoryManager with the specified set of parameters. |
Is |
Tests if the specified Payload buffer is locked and returns the number of individual locks. |
Is |
Tests if the specified Payload buffer is locked and returns the number of individual locks. |
Is |
Tests if Payload |
Lock |
Adds a "Lock" on the specified Payload buffer, preventing it from being released while the lock is active. |
Release |
Releases the Payload memory allocated within the default Payload container. |
Release |
Releases the Payload memory allocated within the default Payload container after two (system is double buffered) Update()> calls |
Retrieve |
Retrieves a NativeArray to safely access an individual Payload that's part of a Disjointed buffer. |
Retrieve |
Retrieves a NativeArray to safely access an individual Payload that's part of a Disjointed buffer. |
Retrieve |
Retrieves a NativeArray to safely access Payload memory. |
Retrieve |
Retrieves a NativeArray to safely access Payload memory. |
Shutdown() | Releases all allocated memory and returns MemoryManager to an uninitialized state. |
Unlock |
Releases an existing Payload Lock on the specified buffer for a given context. |
Update() | Performs maintenance work on the allocated RingBuffers and should be called once per frame. Enters exclusive lock, so make sure it is not called during Lock |