| AI Engine API User Guide (AIE-API) 2026.1

Loading...
Searching...
No Matches
aie::sync Namespace Reference

## Typedefs
using | adopt_lock_t = detail::adopt_lock_t
template<typename Span, unsigned NumBuffers = 2, unsigned NumReaders = 1, unsigned NumWriters = 1>
using | buffered_input = detail::sync::input<Span, NumBuffers>
template<typename Span, unsigned NumBuffers = 2, unsigned NumReaders = 1, unsigned NumWriters = 1>
using | buffered_output = detail::sync::output<Span, NumBuffers>
template<unsigned NumReaders = 1, unsigned NumWriters = 1>
using | consumer_lock = detail::consumer_lock<NumReaders, NumWriters>
template<unsigned NumReaders = 1, unsigned NumWriters = 1>
using | consumer_sem = detail::consumer_sem<NumReaders, NumWriters>
using | mutex = detail::mutex
template<unsigned NumReaders = 1, unsigned NumWriters = 1>
using | producer_lock = detail::producer_lock<NumReaders, NumWriters>
template<unsigned NumReaders = 1, unsigned NumWriters = 1>
using | producer_sem = detail::producer_sem<NumReaders, NumWriters>
using | scoped_lock = detail::scoped_lock

## Functions
template<typename Fn, typename... MutexTypes>
void | locked (Fn fn, MutexTypes &...mutexes)

## Typedef Documentation

## ◆ adopt_lock_t

using aie::sync::adopt_lock_t = detail::adopt_lock_t

## ◆ buffered_input

template<typename Span, unsigned NumBuffers = 2, unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::buffered_input = detail::sync::input<Span, NumBuffers>

## ◆ buffered_output

template<typename Span, unsigned NumBuffers = 2, unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::buffered_output = detail::sync::output<Span, NumBuffers>

## ◆ consumer_lock

template<unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::consumer_lock = detail::consumer_lock<NumReaders, NumWriters>

## ◆ consumer_sem

template<unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::consumer_sem = detail::consumer_sem<NumReaders, NumWriters>

## ◆ mutex

using aie::sync::mutex = detail::mutex

## ◆ producer_lock

template<unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::producer_lock = detail::producer_lock<NumReaders, NumWriters>

## ◆ producer_sem

template<unsigned NumReaders = 1, unsigned NumWriters = 1>

using aie::sync::producer_sem = detail::producer_sem<NumReaders, NumWriters>

## ◆ scoped_lock

using aie::sync::scoped_lock = detail::scoped_lock

## Function Documentation

## ◆ locked()

template<typename Fn, typename... MutexTypes>

void aie::detail::locked | ( | Fn | fn,
|  | MutexTypes &... | mutexes )