Struct NativeStream | Collections | 0.6.0-preview.9
docs.unity3d.com
    Show / Hide Table of Contents

    Struct NativeStream

    A deterministic data streaming supporting parallel reading and parallel writing. Allows you to write different types or arrays into a single stream.

    Namespace: Unity.Collections
    Syntax
    public struct NativeStream : IDisposable

    Constructors

    NativeStream(Int32, Allocator)

    Constructs a new NativeStream using the specified type of memory allocation.

    Declaration
    public NativeStream(int foreachCount, Allocator allocator)
    Parameters
    Type Name Description
    Int32 foreachCount
    Allocator allocator

    A member of the Unity.Collections.Allocator enumeration.

    Properties

    ForEachCount

    Declaration
    public int ForEachCount { get; }
    Property Value
    Type Description
    Int32

    IsCreated

    Reports whether memory for the container is allocated.

    Declaration
    public bool IsCreated { get; }
    Property Value
    Type Description
    Boolean

    True if this container object's internal storage has been allocated.

    Remarks

    Note that the container storage is not created if you use the default constructor. You must specify at least an allocation type to construct a usable container.

    Methods

    AsReader()

    Returns reader instance.

    Declaration
    public NativeStream.Reader AsReader()
    Returns
    Type Description
    NativeStream.Reader

    AsWriter()

    Returns writer instance.

    Declaration
    public NativeStream.Writer AsWriter()
    Returns
    Type Description
    NativeStream.Writer

    ComputeItemCount()

    Compute item count.

    Declaration
    public int ComputeItemCount()
    Returns
    Type Description
    Int32

    Item count.

    Dispose()

    Disposes of this stream and deallocates its memory immediately.

    Declaration
    public void Dispose()

    Dispose(JobHandle)

    Safely disposes of this container and deallocates its memory when the jobs that use it have completed.

    Declaration
    public JobHandle Dispose(JobHandle dependency)
    Parameters
    Type Name Description
    JobHandle dependency

    All jobs spawned will depend on this JobHandle.

    Returns
    Type Description
    JobHandle

    A new job handle containing the prior handles as well as the handle for the job that deletes the container.

    Remarks

    You can call this function dispose of the container immediately after scheduling the job. Pass the JobHandle returned by the Job.Schedule method using the jobHandle parameter so the job scheduler can dispose the container after all jobs using it have run.

    ScheduleConstruct(out NativeStream, NativeArray<Int32>, JobHandle, Allocator)

    Schedule job to construct a new NativeStream using the specified type of memory allocation.

    Declaration
    public static JobHandle ScheduleConstruct(out NativeStream stream, NativeArray<int> lengthFromIndex0, JobHandle dependency, Allocator allocator)
    Parameters
    Type Name Description
    NativeStream stream
    NativeArray<Int32> lengthFromIndex0
    JobHandle dependency
    Allocator allocator

    A member of the Unity.Collections.Allocator enumeration.

    Returns
    Type Description
    JobHandle

    ScheduleConstruct<T>(out NativeStream, NativeList<T>, JobHandle, Allocator)

    Schedule job to construct a new NativeStream using the specified type of memory allocation.

    Declaration
    public static JobHandle ScheduleConstruct<T>(out NativeStream stream, NativeList<T> forEachCountFromList, JobHandle dependency, Allocator allocator)
        where T : struct
    Parameters
    Type Name Description
    NativeStream stream
    NativeList<T> forEachCountFromList
    JobHandle dependency

    All jobs spawned will depend on this JobHandle.

    Allocator allocator

    A member of the Unity.Collections.Allocator enumeration.

    Returns
    Type Description
    JobHandle
    Type Parameters
    Name Description
    T

    ToNativeArray<T>(Allocator)

    Copies stream data into NativeArray.

    Declaration
    public NativeArray<T> ToNativeArray<T>(Allocator allocator)
        where T : struct
    Parameters
    Type Name Description
    Allocator allocator

    A member of the Unity.Collections.Allocator enumeration.

    Returns
    Type Description
    NativeArray<T>

    A new NativeArray, allocated with the given strategy and wrapping the stream data.

    Type Parameters
    Name Description
    T
    Remarks

    The array is a copy of stream data.

    Extension Methods

    JobNativeMultiHashMapVisitKeyValue.Schedule<TJob, TKey, TValue>(TJob, NativeMultiHashMap<TKey, TValue>, Int32, JobHandle)
    JobNativeMultiHashMapVisitKeyMutableValue.Schedule<TJob, TKey, TValue>(TJob, NativeMultiHashMap<TKey, TValue>, Int32, JobHandle)
    JobUnsafeMultiHashMapVisitKeyValue.Schedule<TJob, TKey, TValue>(TJob, UnsafeMultiHashMap<TKey, TValue>, Int32, JobHandle)
    JobUnsafeMultiHashMapVisitKeyMutableValue.Schedule<TJob, TKey, TValue>(TJob, UnsafeMultiHashMap<TKey, TValue>, Int32, JobHandle)
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023