Skip to content

Applies to

net10.0, net10.0-browserwasm1.0, net10.0-desktop1.0, net9.0, net9.0-browserwasm1.0, net9.0-desktop1.0, net8.0, net8.0-ios17.5, net8.0-maccatalyst17.5, net8.0-macos14.2, net8.0-macos14.5, net8.0-tvos17.2, netstandard2.1, net462, net481

public ValueTask LockValueTask<T>(T item, IObserver<(T value, IDisposable Sync)>? observer)

View source

Summary: ValueTask-returning counterpart to Lock. Use this at per-emission call sites where the returned task is awaited exactly once — saves the boxed Task wrapper allocation in the already-locked fast path.

Type parameters

NameDescription
TThe type of the elements in the source sequence.

Parameters

NameTypeDescription
itemTThe item.
observerIObserver<(T value, IDisposable Sync)>?The observer.

Returns: ValueTask -- A ValueTask representing the asynchronous operation.