用AfxBeginThread(fun1,(LPVOID &)pram,0,NULL)启动一个线程时的参数传递问题。
用AfxBeginThread(fun1,(LPVOID &)pram,0,NULL)启动一个线程时,第二个参数(pram)是一个结构,
UINT fun1(LPVOID pPram)
{
struct1 p1;
p1=(truct1 &)pPram;
}
这个参数传递的正确的写法是怎样的?请各位大虾给予指点!!!谢谢!!
问题点数:20、回复次数:6Top
1 楼tufaqing()回复于 2006-03-15 12:24:19 得分 8
struct1 pram;
AfxBeginThread( fun1,&pram,0,NULL );
UINT fun1(LPVOID pPram)
{
struct1* p1 = (struct1 *)pPram;
p1->...
...
}Top
2 楼kathycsl(MM)回复于 2006-03-15 12:38:49 得分 0
这样编译运行都没问题,可是到了fun1的数据已经不知道变成什么了。Top
3 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-15 14:46:58 得分 6
创建的时候应该用同步对象保证传递的对象在线程处理了参数之后才析构Top
4 楼kathycsl(MM)回复于 2006-03-15 15:00:50 得分 0
jiangsheng(蒋晟.Net[MVP]) :你能说的更清楚一些,具体怎样做呀?嘻嘻,给个例子说明一下好吗?Top
5 楼kingkongfather()回复于 2006-03-15 15:42:52 得分 6
可以通过setevent和waitforsingleobject来做Top
6 楼zb2003(生猛土豆)回复于 2006-05-30 20:22:03 得分 0
可以通过setevent和waitforsingleobject来做
能不能详细说说阿Top
相关问题
- AfxBeginThread()
- 为什么CoCreateInstance(clsidWord,NULL,CLSCTX_INPROC_SERVER,IID_IUnknown,(LPVOID*)&lpDisp);出错???
- this==NULL???
- 启动线程函数Afxbeginthread的第二个LPVOID参数是什么意思,为什么线程函数一定要一个LPVOID 作参数
- to :nononono(null,null)
- nononono(null,null)!!!!
- javax.ejb.NoSuchObjectLocalException: null; CausedByException is:null
- a==null 和 a is null
- Test(NULL)
- Update NULL




