View source code
Display the source code in core/stdc/stdatomic.d from which thispage was generated on github.
Report a bug
If you spot a problem with this page, click here to create aGitHub issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.Requires a signed-in GitHub account. This works well for small changes.If you'd like to make larger changes you may want to consider usinglocal clone.
Function core.stdc.stdatomic.atomic_init
Initializes an atomic variable, the destination should not have any expression associated with it prior to this call.
void atomic_init(A, C)(
scope ref return shared(A) obj,
C desired
) @trusted;
We use an ref parameter instead of a pointer for destination in
an attempt to communicate to the compiler that it initializers.
We use ref and not out because out would write to a shared value,
which is not allowed with -preview=nosharedaccess.
Example
shared int val;
atomic_init(val, 2);
// Avoid compiler-generated code that would store `float.init` (a NaN),
// which `-preview=nosharedaccess` treats as shared access.
shared float valF = 0.0f;
atomic_init(valF, 3.2f);
Authors
Richard (Rikki) Andrew cattermole
License
Copyright © 1999-2026 by the D Language Foundation | Page generated by ddox.