社区
C++ 语言
帖子详情
C++类的成员函数并发问题
qq675927952
2010-03-27 11:56:53
想问一下,在windows平台下的我想并发的执行类的成员函数,怎么写啊,因为我想使用类的数据成员,所以不能写成 静态成员函数,CreateThread这个函数要求 那个函数必须是 可见的,要么是全局函数,要么是类的静态成员。
我做的是多种群粒子群算法的优化,所以想每个种群并发执行来进行优化。。。
在线等!请高手帮帮忙啊,急啊!,
...全文
243
8
打赏
收藏
C++类的成员函数并发问题
想问一下,在windows平台下的我想并发的执行类的成员函数,怎么写啊,因为我想使用类的数据成员,所以不能写成 静态成员函数,CreateThread这个函数要求 那个函数必须是 可见的,要么是全局函数,要么是类的静态成员。 我做的是多种群粒子群算法的优化,所以想每个种群并发执行来进行优化。。。 在线等!请高手帮帮忙啊,急啊!,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cattycat
2010-03-27
打赏
举报
回复
或者把你那个函数设成静态成员函数,就可以用CreateThread函数了。
cattycat
2010-03-27
打赏
举报
回复
可以用MFC的AfxBeginThread()函数,你的类继承CWindThread就可以了。
可以看看MFC的工作者线程。
jackyjkchen
2010-03-27
打赏
举报
回复
使用静态线程函数,线程参数传入this指针即可使用类成员
qq675927952
2010-03-27
打赏
举报
回复
请问那个高手能说的详细些吗?举个简单的例子吧,
nscboy
2010-03-27
打赏
举报
回复
纯粹并发的执行类的成员函数是没有问题的.你甚至可用把它作为普通函数看待.
关键是你在这些成员函数中操作成员的变量时要特别注意变量所属的对象.以及这些操作的同步问题.
herman~~
2010-03-27
打赏
举报
回复
静态线程函数
传入类this指针,然后调用类的成员函数
开心的卡夫卡
2010-03-27
打赏
举报
回复
CWinThread m_thread;
AfxBeginThread (MyProc, this);
MyProc(LPARAM lparam)
{
CMyClass* m_class = (CMyClass*)lparam;
。。。
。。。;
}
如此如此~~~~
xxphddz
2010-03-27
打赏
举报
回复
在线程处理函数中有一个无类型指针(void*)参数;
可将需要处理的类地址传入即可!若还需要其他数据对象。可将所有的数据对象当做结构体变量的成员变量。
将结构体指针传递进去
Boost程序库完全开发指南.pdf
Boost是一个功能强大、构造精巧、跨平台、开源并且完全免费的
C++
程序库,有着“
C++
‘准’标准库”的美誉。 它由
C++
标准委员会部分成员所设立的Boost社区开发并维护,使用了许多现代
C++
编程技术,内容涵盖字符串处理、正则表达式、容器与数据结构、
并发
编程、函数式编程、泛型编程、设计模式实现等许多领域,极大地丰富了
C++
的功能和表现力,能够使
C++
软件开发更加简洁、优雅、灵活和高效。 本书基于Boost1.42版,介绍了其中的所有99个库,并且详细深入地讲解了其中数十个库,同时实现了若干颇具实用价值的工具
类
和函数,可帮助读者迅速理解掌握Boost的用法以及应用于实际的开发工作中。 本书内容丰富、结构严谨、详略得当、讲解透彻,带领读者领略了
C++
的最新前沿技术,相信会是每位
C++
程序员的必备工具书。
c++
学习之 多线程(三) thread
类
的
成员函数
c++
学习之 多线程(三) thread
类
的
成员函数
前言 thread
类
提供了几个
成员函数
,由于构造函数之前有讲过,所以本文着重分析一下其他函数的用法。 正文 1.~thread() 析构函数,用来销毁thread对象,但是调用析构函数的前提必须是该thread对象是不可连接的,否则不可以。 2.joinable() 调用这个函数来判断该thread对象是否可连接,可以返回真,否则返回假。...
c++
多线程编程--thread
成员函数
thread
成员函数
thread
类
提供了丰富的
成员函数
帮助用户实现多线程编程。我们把构造函数单独拎出来作为一章来介绍。如下 thread构造函数 非构造函数的
成员函数
介绍: 序号 函数格式 返回值 意义 1 join() void 让当前线程等待线程t执行完成 2 joinable() bool 判断当前线程是否可以join 3 detach() void 继续执行当前线程,不必等待线程t执行完成 4 get_id() std::thread::id 获取线程id 5 st
c++
多线程调用
类
成员函数
方法
main.cpp #include <iostream> #include <thread> using namespace std; class print { public: void printHello(string name) { cout<<"Hello "<<name<<"!!!\n"; } }; int main(int argc, char **argv) { print
C++
11
并发
与多线程(三、线程传参,
成员函数
做线程函数)
一、传递临时对象作为线程参数 结论:只要用临时构造A
类
对象作为参数传递给线程,那么就一定能够在主线程执行完毕之前把线程的第二个参数构建出来,从而确保即便detach()了,子线程也能安全运行 void MyPrint(const int &num, const string &buf) { cout << num << endl; cout << buf << endl; } int main() { int num = 1; int
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章