news 2026/6/10 12:53:09

std::thread创建线程访问类成员

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
std::thread创建线程访问类成员

方法一:std::bind + 成员函数

class TaskHelp { public: TaskHelp() = default; ~TaskHelp() { StopTask(); } public: // 线程函数 void ThreadFunc() { // todo 其他事项 // 访问类成员 std::cout << m_status.c_str() <<std::endl; } // 方法一 void StartTask_v1() { m_taskThread = std::thread(std::bind(&TaskHelp::ThreadFunc, this)); } void StopTask() { if (m_taskThread.joinable()) { m_taskThread.join(); } } void SetStatus(const std::string& status) { m_status = status; } private: std::string m_status = "no task"; std::thread m_taskThread; }; // 使用示例 int main(int argc, char* argv[]) { TaskHelp help; help.StartTask_v1(); Sleep(1000); help.StopTask(); return 0; }

方法二:[this] + lambda

class TaskHelp { public: TaskHelp() = default; ~TaskHelp() { StopTask(); } public: // 线程函数 void ThreadFunc() { // todo 其他事项 // 访问类成员 std::cout << m_status.c_str() <<std::endl; } // 方法二 void StartTask_v2() { m_taskThread = std::thread([this]() { // todo 其他事项 // 访问类成员 std::cout << m_status.c_str() << std::endl; }); } void StopTask() { if (m_taskThread.joinable()) { m_taskThread.join(); } } void SetStatus(const std::string& status) { m_status = status; } private: std::string m_status = "no task"; std::thread m_taskThread; }; // 使用示例 int main(int argc, char* argv[]) { TaskHelp help; help.StartTask_v2(); Sleep(1000); help.StopTask(); getchar(); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 7:52:31

.NET微服务架构:从开发到部署全指南

你列出的这些技术栈&#xff08;.NET Core、RabbitMQ、EF Core、Web API、TCP、Swagger、Linux、Docker&#xff09;构成了一个典型的现代化微服务或分布式系统开发环境。下面我为你简要梳理它们各自的角色&#xff0c;并提供一些整合建议和最佳实践&#xff1a;1. .NET Core&a…

作者头像 李华
网站建设 2026/6/10 8:54:50

基于51单片机自动吸尘粉笔擦黑板压力检测风扇除尘设计DIY套件127(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于51单片机自动吸尘粉笔擦黑板压力检测风扇除尘设计DIY套件127(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码 51单片机黑板自动吸尘粉笔擦压力检测风扇除尘127产品功能描述&#xff1a; 本系统由STC89C52单片机、拨动开关、…

作者头像 李华
网站建设 2026/6/10 8:55:06

基于51单片机智能洗手器干手器红外人体感应风扇烘干设计套件149(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于51单片机智能洗手器干手器红外人体感应风扇烘干设计套件149(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码51单片机智能红外洗手器干手器风扇烘干系统149 产品功能描述&#xff1a; 本系统由STC89C52单片机、继电器控制、…

作者头像 李华
网站建设 2026/6/10 8:58:59

基于MSP430单片机超低功耗温度计温度检测报警系统设计/DIY套件4(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于MSP430单片机超低功耗温度计温度检测报警系统设计/DIY套件4(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码 MSP430单片机超低功耗温度计检测报警系统4产品功能描述&#xff1a; 本系统由MSP430F149单片机核心、LCD1602液晶…

作者头像 李华
网站建设 2026/6/10 8:54:12

【案例分享】如何借助SciChart打造实时生物反馈移动可视化

在现代医疗与康复领域&#xff0c;实时获取人体生理数据并进行精准可视化显示&#xff0c;是提升诊疗效果与患者体验的关键。加拿大蒙特利尔企业 Thought Technology Ltd. 凭借其在生物反馈与心理生理监测领域 50 多年的深厚积淀&#xff0c;近期利用 SciChart 图表引擎 成功构…

作者头像 李华
网站建设 2026/6/10 8:54:48

第二节 | 利润就是一切吗?

在企业经营中&#xff0c;利润看起来无比重要&#xff0c;但它真的等同于企业的“钱”吗&#xff1f; 如果一家公司账面盈利&#xff0c;却长期缺钱&#xff0c;它到底算不算成功&#xff1f;本文核心要点在进入正文之前&#xff0c;先给出本章的核心结论&#xff0c;帮助你建立…

作者头像 李华