std::formatter<std::thread::id>

来自cppreference.com
< cpp‎ | thread‎ | thread‎ | id
 
 
并发支持库
线程
(C++11)
(C++20)
this_thread 命名空间
(C++11)
(C++11)
(C++11)
协作式取消
互斥
(C++11)
通用锁管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
条件变量
(C++11)
信号量
闩与屏障
(C++20)
(C++20)
未来体
(C++11)
(C++11)
(C++11)
(C++11)
安全回收
(C++26)
风险指针
原子类型
(C++11)
(C++20)
原子类型的初始化
(C++11)(C++20 弃用)
(C++11)(C++20 弃用)
内存定序
(C++11)(C++26 弃用)
原子操作的自由函数
原子标志的自由函数
 
 
std::thread::id
成员函数
非成员函数
(C++20 前)(C++20 前)(C++20 前)(C++20 前)(C++20 前)(C++20)
辅助类
formatter<std::thread::id>
(C++23)
 
在标头 <thread> 定义
template< class CharT >
struct formatter<std::thread::id, CharT>;
(C++23 起)

std::formatter 模板针对 std::thread::id 类的特化允许用户使用格式化函数将线程标识符转换为文本表示。

目录

[编辑] 格式说明

格式说明的语法是:

填充与对齐 (可选) 宽度 (可选)

填充与对齐宽度标准格式说明中的含义相同。默认对齐方式为 >

格式化后的输出结果与 operator<< 的输出结果一致,并根据格式说明符进行调整。

[编辑] 注解

功能特性测试 标准 功能特性
__cpp_lib_formatters 202302L (C++23) 格式化 std::thread::idstd::stacktrace

[编辑] 示例

#include <format>
#include <iostream>
#include <thread>
 
int main()
{
    std::thread::id this_id = std::this_thread::get_id();
    std::thread::id null_id;
 
    std::cout << std::format("当前线程 id: {}\n", this_id);
    std::cout << std::format("{:=^10}\n", null_id);
}

可能的输出:

当前线程 id: 140046396632256
====0=====

[编辑] 参阅

(C++20)
定义针对给定类型的格式化规则
(类模板) [编辑]