社区
网络编程
帖子详情
MFC多线程问题
archload-1
2007-02-05 12:11:12
请问如何在MFC应用程序中创建一个子线程。
...全文
343
10
打赏
收藏
MFC多线程问题
请问如何在MFC应用程序中创建一个子线程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
archload-1
2007-02-05
打赏
举报
回复
OK了,谢谢!我再看一下。有问题再提出,没问题我会马上揭帖的
archload-1
2007-02-05
打赏
举报
回复
如何我按照楼上的方法定义后,那么在AfxBeginThread函数我该如何引用Sends函数呢
crumpy
2007-02-05
打赏
举报
回复
把static去掉呢? 在声明时使用static, 在定义实现该函数时不用static
UINT CClientSocketList::Sends(LPVOID pParam)
{.....}
archload-1
2007-02-05
打赏
举报
回复
static UINT CClientSocketList::Sends(LPVOID pParam)
{
}
定义时我是这样写的。可是提持示下面这样的错误。
error C2724: “CClientSocketList::Sends”: “static”不应在文件范围内定义的成员函数上使用
这是什么原因呢。
crumpy
2007-02-05
打赏
举报
回复
写错了: 因此你可能需要将CClientSocketList的一个对象实例
crumpy
2007-02-05
打赏
举报
回复
// 比如这是你的类
class CClientSocketList
{
.....
public:
static UINT Sends(...//这里是参数); // 给Sends加一个static关键字
};
但使用static方法后, static是属于类CClientSocketList的, 而不是属于CClientSocketList的某个特定实例的, 因此你可能需要将CClientSocketList, 作为lpVoid的线程参数传入
全局函数, 就是普通的函数.
freecsw
2007-02-05
打赏
举报
回复
改成 static UINT Sends(LPVOID pParam);
archload-1
2007-02-05
打赏
举报
回复
如何定义一个函数为全局或静态成员呢。
crumpy
2007-02-05
打赏
举报
回复
AfxBeginThread要求传递的线程函数是全局或静态成员的, 一般的成员函数不行.
如果Send是CClientSocketList的静态成员, &CClientSocketList::Send就应该可以了.
archload-1
2007-02-05
打赏
举报
回复
我现在有一个函数:
UINT Sends(LPVOID pParam);
然后通过一下方式在CDialog类中创建一个子线程:
AfxBeginThread(m_pServerSocket->m_pClientSocketList->Sends,NULL);
但是在编译的时候总是会提示这样的错误:
error C3867: “CClientSocketList::Sends”: 函数调用缺少参数列表;请使用“&CClientSocketList::Sends”创建指向成员的指针
请问这是什么原因?
mfc
下的
多线程
编程应该注意的
问题
从前辈博客看到微软文章,记录
多线程
编程注意
问题
。在使用
MFC
编写的
多线程
应用程序中,不应跨线程边界传递
MFC
对象,一般线程应仅访问自己创建的
MFC
对象,还给出了资料链接。
多线程
解决
MFC
对话框未响应、卡死
问题
本开源项目聚焦于解决
MFC
对话框应用未响应和卡死
问题
。介绍了
多线程
基础知识,分析
MFC
对话框卡顿原因,给出具体代码示例与实现步骤。还探讨线程管理优化,避免资源竞争和死锁,能提升应用响应速度和用户体验。
MFC
多线程
内存泄漏
问题
&解决方法
MFC
多线程
编程中,通过AfxBeginThread或CreateThread创建的线程可能导致内存泄漏,尤其是在
多线程
环境下。
问题
源于CWinThread的不安全性,如TerminateThread的不当使用,使C运行时库的内存释放出错。此外,频繁的线程创建与销毁,尤其是在VC6中混用
MFC
库和STL库,可能导致程序崩溃。理解&_beginthreadex与CreateThread的区别有助于解决这类
问题
。
MFC
中
多线程
问题
本文探讨了
MFC
中
多线程
编程遇到的
问题
:当线程函数作为类成员时出现错误。文中提供了三种解决方案:引入中介类、将成员函数声明为静态并传递this指针、将线程函数定义为类的友元。这些方法解决了成员函数作为线程入口点的
问题
。
利用
多线程
技术解决
MFC
对话框响应
问题
使用
MFC
开发Windows桌面应用时,对话框易因主线程被长时间任务阻塞而卡死。本文讲解利用
多线程
技术解决此
问题
,涵盖
多线程
基础、线程创建与管理、数据通信与同步、UI更新线程安全、异常处理与线程退出策略等内容,以提升应用响应性和用户体验。
网络编程
18,357
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章