[求助]关于COM的套间概念适用的场合和对象
本人由完全不懂atl技术,到现在写了几个简单的atl组件,但是还是有很多不懂的东西。其中最为不理解的就是com的基础:套间技术。
我用的是vs2005,创建工程时用的是sta,非主线程用的也是sta。我最不懂的是sta的指针和代理指针是在什么情况下适用?比如说我建了个com对象,里面有char *的成员,那这个成员变量的值要通过CoMarshalInterThreadInterfaceInStream和CoGetInterfaceAndReleaseStream来使用呢,还是可以直接使用?实践情况来看是可以直接用的,但我不知道是偶然还是必然。另外还有HANDLE等其他指针,它们又是怎样用的呢?
目前的使用情况来看,只有js传过来的函数指针是需要代理访问的,但是我不知道自己是不是在歧路上越走越远了,可能是因为我没有理解sta的本质。
求高人指点。可以是简单说明,也可以是有详细说明sta的网页(不过估计网页的效果不明显,因为我自己看了一些都没看懂)。我主要想了解的不同线程之间就是哪些东西可以直接访问,哪些需要代理访问?
[解决办法]
看看我的博客 http://blog.csdn.net/ynb119/article/details/4965781
STA的概念讲的很清楚。
[解决办法]
接口指针需要通过列集散集来传递到其它线程中,而不是特定的成员变量