Android-cuttlefish cvd tool
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
mdns::AdbOspTaskRunner Class Referencefinal

#include <task_runner.h>

Inheritance diagram for mdns::AdbOspTaskRunner:
Inheritance graph
[legend]
Collaboration diagram for mdns::AdbOspTaskRunner:
Collaboration graph
[legend]

Public Types

using Task = openscreen::TaskRunner::Task
 

Public Member Functions

 AdbOspTaskRunner ()
 
 ~AdbOspTaskRunner () final
 
void PostPackagedTask (Task task) final
 
void PostPackagedTaskWithDelay (Task task, openscreen::Clock::duration delay) final
 
bool IsRunningOnTaskRunner () final
 
void TaskExecutorWorker ()
 

Private Member Functions

std::multimap< std::chrono::time_point< std::chrono::steady_clock >, Task > tasks_ GUARDED_BY (mutex_)
 

Private Attributes

uint64_t thread_id_
 
std::mutex mutex_
 
std::atomic< bool > terminate_loop_ = false
 
std::condition_variable cv_
 
std::thread task_handler_
 

Member Typedef Documentation

◆ Task

using mdns::AdbOspTaskRunner::Task = openscreen::TaskRunner::Task

Constructor & Destructor Documentation

◆ AdbOspTaskRunner()

mdns::AdbOspTaskRunner::AdbOspTaskRunner ( )
explicit

◆ ~AdbOspTaskRunner()

mdns::AdbOspTaskRunner::~AdbOspTaskRunner ( )
final

Member Function Documentation

◆ GUARDED_BY()

std::multimap< std::chrono::time_point< std::chrono::steady_clock >, Task > tasks_ mdns::AdbOspTaskRunner::GUARDED_BY ( mutex_  )
private

◆ IsRunningOnTaskRunner()

bool mdns::AdbOspTaskRunner::IsRunningOnTaskRunner ( )
final

◆ PostPackagedTask()

void mdns::AdbOspTaskRunner::PostPackagedTask ( Task  task)
final

◆ PostPackagedTaskWithDelay()

void mdns::AdbOspTaskRunner::PostPackagedTaskWithDelay ( Task  task,
openscreen::Clock::duration  delay 
)
final

◆ TaskExecutorWorker()

void mdns::AdbOspTaskRunner::TaskExecutorWorker ( )

Member Data Documentation

◆ cv_

std::condition_variable mdns::AdbOspTaskRunner::cv_
private

◆ mutex_

std::mutex mdns::AdbOspTaskRunner::mutex_
private

◆ task_handler_

std::thread mdns::AdbOspTaskRunner::task_handler_
private

◆ terminate_loop_

std::atomic<bool> mdns::AdbOspTaskRunner::terminate_loop_ = false
private

◆ thread_id_

uint64_t mdns::AdbOspTaskRunner::thread_id_
private

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