NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
virtual_thread类 参考

虚拟线程类 更多...

#include <virtual_thread.hpp>

Public 成员函数

 virtual_thread ()=default
 默认构造函数
 virtual_thread (const virtual_thread &)=delete
 禁止拷贝构造
virtual_threadoperator= (const virtual_thread &)=delete
 禁止拷贝赋值
 virtual_thread (virtual_thread &&other) noexcept=default
 移动构造函数
virtual_threadoperator= (virtual_thread &&other) noexcept=default
 移动赋值运算符

静态 Public 成员函数

template<typename Func>
static virtual_thread start (Func &&func)
 启动虚拟线程
static virtual_thread_awaiter yield ()
 让出执行权
static virtual_thread_task sleep (const int64_t ms)
 睡眠指定毫秒数
static void initialize (size_t num_threads)
 初始化调度器
static void shutdown ()
 关闭调度器

详细描述

虚拟线程类

提供虚拟线程的创建、调度和管理功能。 支持协作式多任务和轻量级并发。

在文件 virtual_thread.hpp271 行定义.

成员函数说明

◆ initialize()

void virtual_thread::initialize ( size_t num_threads)
inlinestatic

初始化调度器

参数
num_threads工作线程数量

启动指定数量的工作线程处理协程任务。

在文件 virtual_thread.hpp337 行定义.

引用了 virtual_thread_scheduler::get_instance() , 以及 virtual_thread_scheduler::start_workers().

◆ shutdown()

void virtual_thread::shutdown ( )
inlinestatic

关闭调度器

关闭所有工作线程,清理资源。

在文件 virtual_thread.hpp344 行定义.

引用了 virtual_thread_scheduler::get_instance() , 以及 virtual_thread_scheduler::shutdown().

◆ sleep()

virtual_thread_task virtual_thread::sleep ( const int64_t ms)
inlinestatic

睡眠指定毫秒数

参数
ms毫秒数
返回
虚拟线程任务

挂起当前协程指定时间,协程式睡眠。

在文件 virtual_thread.hpp326 行定义.

引用了 yield().

◆ start()

template<typename Func>
virtual_thread virtual_thread::start ( Func && func)
inlinestatic

启动虚拟线程

模板参数
Func可调用类型
参数
func要执行的函数
返回
虚拟线程对象

创建并启动新的虚拟线程执行指定函数。

在文件 virtual_thread.hpp305 行定义.

引用了 forward() , 以及 virtual_thread().

◆ yield()

virtual_thread_awaiter virtual_thread::yield ( )
inlinestatic

让出执行权

返回
等待器对象

挂起当前协程,将执行权交给调度器。

在文件 virtual_thread.hpp317 行定义.

被这些函数引用 sleep().


该类的文档由以下文件生成: