萱草基于C++11,介绍启动线程的五种方式( 二 )
本节将采用函数对象的形式启动线程 , 说明如何应用到实际的应用中 。
假设有不同的命令 , 需要在线程中执行 , 首先实现命令基类
本文插图
然后创建执行命令类JWorkThread, 并重载operator() 运算符, 并且内部执行命令 。
本文插图
接着现在有一个类JRunCmd继承基类JCommand , 则调用方式如下所示
本文插图
本文主要说明了五种启动线程的方式 , 并且说明了其特点 , 最后举了一个线程应用的场景 。 但是 , 实际使用过程中 , 需要结合具体的场景来使用对应的线程启动方式 。
- 函数指针方式:定义普通函数
- 函数对象方式:重载operator()运算符
- Lambda函数方式:匿名函数
- 类函数指针的方式:对象函数指针
- std::bind的方式: 实际上也是对象函数指针
推荐阅读
- 华为发布首个基于5G MEC云边端协同的工业视觉解决方案
- 萱草饿吗?来根今日油条
- 萱草|饿吗?来根今日油条
- 上海市浦东模范中学|[浦东]浦东模范中学:“基于素养培育 构建四适课堂”浦兴学区语文主题研讨活动
- 通信世界网|MEC云边端协同的工业视觉解决方案,华为发布首个基于5G
- 行业互联网华为发布首个基于5G MEC云边端协同的工业视觉解决方案
- 上海市浦东新区竹园小学|[浦东]竹园小学:基于标准 落实要求 均衡导向 集群发展-学校沪东校区接受浦东新区小学沪东学区化课程与教学调研纪实
- 昊明有态度|北大、斯坦福提出基于动态图网络学习的三维部件拼装
- 和讯名家 苹果在赌什么?
- 和讯名家苹果在赌什么?
