找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 5108|回复: 6

ACE_Singleton在dll跟exe中两个不同实例的问题

[复制链接]
发表于 2008-8-18 16:25:22 | 显示全部楼层 |阅读模式
关于ace_singleton的问题,
一个dll中声明了这样一个单体:typedef ACE_Singleton<NetProcessor, ACE_Null_Mutex> NetProcessorSingleton;
dll中用的NetProcessorSingleton::instance() 跟exe中用的NetProcessorSingleton::instance()是两个不同的实例。
这个怎么解决呢
发表于 2008-8-18 20:45:28 | 显示全部楼层
把exe中的去掉,dll中的改成ACE_Unmanaged_Singleton。
这样在用service configurator替换不同的dll时,可以有不同的实例。
发表于 2008-8-19 15:04:41 | 显示全部楼层
wishel正解。楼主要读书哦,书上写的一清二楚。
发表于 2008-9-7 00:16:12 | 显示全部楼层
我看了ace的三本书,好像没看过这方面的内容,你们是看哪些书?
发表于 2008-9-8 13:13:58 | 显示全部楼层
书上有的。内容太多,需要经常翻阅,否则一些细节内容,很快就忘记了。
发表于 2010-3-10 17:06:14 | 显示全部楼层
楼上的都答非所问
楼主建议你去ACE的源码中搜索:ACE_SINGLETON_DECLARE.
楼主用DLL,肯定知道dllimport dllexport吧
这个typedef的模板类所实例化的类也要dllexport.
另外参见:
http://groups.google.com/group/comp.soft-sys.ace/browse_thread/thread/ca5cca2ee22eb866/31f1ee30bfc5fcf4?lnk=raot
发表于 2010-3-11 10:03:55 | 显示全部楼层
ls的id比较有趣
是fowler的fans么?
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-11-22 18:20 , Processed in 0.015905 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表