Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Member Functions | List of all members
uni20::async::CudaResourceAcquireAwaiter< Resource > Class Template Reference

CUDA-task awaiter for one provider resource from a fixed-capacity pool. More...

#include <task_awaiters.hpp>

Inheritance diagram for uni20::async::CudaResourceAcquireAwaiter< Resource >:
[legend]
Collaboration diagram for uni20::async::CudaResourceAcquireAwaiter< Resource >:
[legend]

Public Member Functions

bool await_ready ()
 
cuda::ResourceLease< Resource > await_resume ()
 
bool await_suspend (std::coroutine_handle< CudaTaskPromise > handle) noexcept
 
 CudaResourceAcquireAwaiter (cuda::ResourcePool< Resource > &pool) noexcept
 
 CudaResourceAcquireAwaiter (CudaResourceAcquireAwaiter &&)=delete
 
 CudaResourceAcquireAwaiter (CudaResourceAcquireAwaiter const &)=delete
 
CudaResourceAcquireAwaiter & operator= (CudaResourceAcquireAwaiter &&)=delete
 
CudaResourceAcquireAwaiter & operator= (CudaResourceAcquireAwaiter const &)=delete
 

Detailed Description

template<class Resource>
class uni20::async::CudaResourceAcquireAwaiter< Resource >

CUDA-task awaiter for one provider resource from a fixed-capacity pool.

Constructor & Destructor Documentation

◆ CudaResourceAcquireAwaiter() [1/3]

template<class Resource >
uni20::async::CudaResourceAcquireAwaiter< Resource >::CudaResourceAcquireAwaiter ( cuda::ResourcePool< Resource > &  pool)
inlineexplicitnoexcept

◆ CudaResourceAcquireAwaiter() [2/3]

template<class Resource >
uni20::async::CudaResourceAcquireAwaiter< Resource >::CudaResourceAcquireAwaiter ( CudaResourceAcquireAwaiter< Resource > const &  )
delete

◆ CudaResourceAcquireAwaiter() [3/3]

template<class Resource >
uni20::async::CudaResourceAcquireAwaiter< Resource >::CudaResourceAcquireAwaiter ( CudaResourceAcquireAwaiter< Resource > &&  )
delete

Member Function Documentation

◆ await_ready()

template<class Resource >
bool uni20::async::CudaResourceAcquireAwaiter< Resource >::await_ready ( )
inline

◆ await_resume()

template<class Resource >
cuda::ResourceLease< Resource > uni20::async::CudaResourceAcquireAwaiter< Resource >::await_resume ( )
inline

◆ await_suspend()

template<class Resource >
bool uni20::async::CudaResourceAcquireAwaiter< Resource >::await_suspend ( std::coroutine_handle< CudaTaskPromise >  handle)
inlinenoexcept

◆ operator=() [1/2]

template<class Resource >
CudaResourceAcquireAwaiter & uni20::async::CudaResourceAcquireAwaiter< Resource >::operator= ( CudaResourceAcquireAwaiter< Resource > &&  )
delete

◆ operator=() [2/2]

template<class Resource >
CudaResourceAcquireAwaiter & uni20::async::CudaResourceAcquireAwaiter< Resource >::operator= ( CudaResourceAcquireAwaiter< Resource > const &  )
delete

The documentation for this class was generated from the following file: