Struct PayloadHandle
Holds a 64-bit value that uniquely references an allocated memory block within Log
Implements
Inherited Members
Namespace: Unity.Logging
Assembly: Unity.Logging.dll
Syntax
[BurstCompile]
public readonly struct PayloadHandle : IEquatable<PayloadHandle>
Remarks
This is the primary field in Log
Offset - Byte offset (index) within the RingBuffer of the allocated Payload chunk (includes header) Version - Handle validation value; must match Version within chunk header or handle is rejected BufferID - Identifies specific RingBuffer by an ID value (MemoryManager can maintain multiple RingBuffers) BitFields - Other flags an/or misc. data
The handle holds a unique, single-use value that references a specific memory buffer under the control
of Log
Properties
IsDisjointedBuffer
Checks if the PayloadHandle references a Disjointed Buffer.
Declaration
public bool IsDisjointedBuffer { get; }
Property Value
Type | Description |
---|---|
bool |
Remarks
A Disjointed Buffer is an allocation that contains PayloadHandle values to other allocations. This allows multiple allocated buffers to be combined into a single reference, but as a consequence the memory isn't contiguous and requires multiple handle look-ups to retrieve the entirety of the data.
IsValid
Checks if the PayloadHandle value is valid.
Declaration
public bool IsValid { get; }
Property Value
Type | Description |
---|---|
bool | True if valid and false if not |
Remarks
Note this doesn't check if the PayloadHandle actually references a valid Payload buffer or not. An invalid handle typically indicates a Payload allocation failed.
To check if the handle references a valid Payload buffer, call Is
Methods
Equals(PayloadHandle)
Equals method that compares this PayloadHandle with another one
Declaration
public bool Equals(PayloadHandle other)
Parameters
Type | Name | Description |
---|---|---|
Payload |
other | PayloadHandle |
Returns
Type | Description |
---|---|
bool | true if they're equal |
GetHashCode()
Hash function
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
int | Hash value of this PayloadHandle |