Multi-Threading
Base.Threads.@threadsBase.Threads.foreachBase.Threads.@spawnBase.Threads.threadidBase.Threads.nthreads
同步
Base.Threads.ConditionBase.Threads.Event
另见 同步 。
原子操作
Base.@atomicBase.@atomicswapBase.@atomicreplace
!!! note
The following APIs are fairly primitive, and will likely be exposed through an `unsafe_*`-like wrapper.
Core.Intrinsics.atomic_pointerref(pointer::Ptr{T}, order::Symbol) --> TCore.Intrinsics.atomic_pointerset(pointer::Ptr{T}, new::T, order::Symbol) --> pointerCore.Intrinsics.atomic_pointerswap(pointer::Ptr{T}, new::T, order::Symbol) --> oldCore.Intrinsics.atomic_pointermodify(pointer::Ptr{T}, function::(old::T,arg::S)->T, arg::S, order::Symbol) --> oldCore.Intrinsics.atomic_pointerreplace(pointer::Ptr{T}, expected::Any, new::T, success_order::Symbol, failure_order::Symbol) --> (old, cmp)
!!! warning
The following APIs are deprecated, though support for them is likely to remain for several releases.
Base.Threads.AtomicBase.Threads.atomic_cas!Base.Threads.atomic_xchg!Base.Threads.atomic_add!Base.Threads.atomic_sub!Base.Threads.atomic_and!Base.Threads.atomic_nand!Base.Threads.atomic_or!Base.Threads.atomic_xor!Base.Threads.atomic_max!Base.Threads.atomic_min!Base.Threads.atomic_fence
ccall using a threadpool (Experimental)
Base.@threadcall
Low-level synchronization primitives
These building blocks are used to create the regular synchronization objects.
Base.Threads.SpinLock
