找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 6398|回复: 2

请教基于时间的UUID生成算法

[复制链接]
发表于 2011-4-13 11:01:48 | 显示全部楼层 |阅读模式
如题,应用场景在同一时空内产生永不重复的唯一ID,
在多连接服务器中标识客户ID。
发表于 2011-4-13 12:23:41 | 显示全部楼层
本帖最后由 freeeyes 于 2011-4-13 12:24 编辑

ACE有UUID的模块。
ACE_Utils::UUID_GENERATOR::instance()->init();  
ACE_Utils::UUID uuid;  
ACE_Utils::UUID_GENERATOR::instance()->generateUUID(objuuid);  
sUuid.assign(objuuid.to_string ()->c_str ())  
具体请查看ACE_Utils相关API
相关例子
  1. #include <iostream>
  2. 2 #include <ace/ACE.h>
  3. 3 #include <ace/UUID.h>
  4. 4 #include <ace/Process.h>
  5. 5 using namespace std;
  6. 6
  7. 7
  8. 8 int main(int argc, char* argv[])
  9. 9 {
  10. 10     string uuid_str;
  11. 11
  12. 12     while (1)
  13. 13     {
  14. 14         ACE_Utils::UUID_Generator uuidout;
  15. 15         uuidout.init();
  16. 16         ACE_Utils::UUID uuid;
  17. 17         //uuidout.generate_UUID(uuid);///->ace5.6.9
  18.            uuidout.generateUUID(uuid);///->ace5.4.0
  19. 18         uuid_str.assign(uuid.to_string ()->c_str ());
  20. 19         cout<<uuid_str.c_str()<<endl;
  21. 20         ACE_OS::sleep( 1 );
  22. 21     }
  23. 22     
  24. 23     return 0;
  25. 24 };
复制代码
 楼主| 发表于 2011-4-14 11:28:50 | 显示全部楼层
昨天仔细看了UUID的实现,能满足要求,谢了
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-11-22 02:59 , Processed in 0.012055 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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