Platforms to show: All Mac Windows Linux Cross-Platform

DispatchDataMBS class   New in 25.3

Type Topic Plugin Version macOS Windows Linux iOS Targets
class DispatchIO MBS MacOSX Plugin 25.3 ✅ Yes ❌ No ❌ No ✅ Yes All
The class to wrap memory for dispatch I/O operations.
Example
// make a memoryblock
Var m As New MemoryBlock(100)
m.StringValue(0,5) = "Hello"

// wrap into data obect
Var d As New DispatchDataMBS(m)
Var size As Integer = d.Size

// copy back out
Var data As MemoryBlock = d.CopyData
// and check content
Var da As String = data.StringValue(0,5)

// release it
d = Nil

Dispatch data objects describe contiguous or sparse regions of memory that may be managed by the system or by the application.

Dispatch data objects are immutable, any direct access to memory regions represented by dispatch objects must not modify that memory.

We usually just wrap a MemoryBlock and avoid copying it for better performance.

  • 5 properties
  • 6 methods
    • method Concat(other as DispatchDataMBS) as DispatchDataMBS
    • method Constructor(data as DispatchDataMBS)
    • method Constructor(data as MemoryBlock, copy as boolean = false)
    • method Constructor(data as Ptr, Length as Integer)
    • method CopyData as MemoryBlock
    • method SubRange(offset as UInt64, length as UInt64) as DispatchDataMBS

This class has no sub classes.

Blog Entries

Release notes

  • Version 25.3
    • Added DispatchDataMBS or DispatchIOMBS classes.

Some methods using this class:

Some events using this class:

Some related classes:


The items on this page are in the following plugins: MBS MacOSX Plugin.


DisclosureTriangle   -   DispatchIOMBS


The biggest plugin in space...