服务器唯一id生成规则
2023-09-14 08:57:59 时间
在使用hashCode的时候,发现会出现相同id,虽然几率很小。虽然发现并不是hashCode的原因,而是其他逻辑的问题。
但是还是试着自己写了一个id生成器,有些id是int的,比如说任务id;有些id是long的,比如说玩家id。
先贴代码来看:
private static AtomicInteger id = new AtomicInteger(0); public static long getId() return (ServerKit.getServerId() 0xFFFF) 48 | (System.currentTimeMillis()/1000L 0xFFFFFFFF) 16 | id.addAndGet(1) 0xFFFF; private static AtomicInteger IntId = new AtomicInteger(0); public static int getIntId() return ((int)(System.currentTimeMillis() - 1000000000000L)/1000) 16L | (IntId.addAndGet(1)); }
在生成玩家id的时候把服务器的id也参与,便于以后的合服。
因为服务器是多线程,所以就用了 AtomicInteger 类型,不用再使用类似 sync等同步工具。
讲解三层代码讲解(DLL规则层如何接收服务器的数据,又如何交回给服务器)--第四课(*****) DATE :2004-06-01 主题:讲解三层代码讲解(DLL规则层如何接收服务器的数据,又如何交回给服务器)--第四课(*****)主讲:A1时间:2004-06-01 15:00 2004-06-01 14:57:31 烟灰缸我们开始好了,其它的朋友就不等了。
相关文章
- PHP的基本规则
- Java正则表达式语法规则(具体)
- 【说站】新书图阁小说源码服务器打包运营版/带wap手机版完整会员中心/送火车头采集规则
- 【说站】Nginx 规则防止服务器被恶意扫描下载
- 补码的加减法运算_简述补码减法运算的规则
- 关联规则挖掘--Apriori算法
- Mysql字符集和排序规则详解
- Drools 规则引擎—-向领域驱动进步(三)详解编程语言
- 《Drools7.0.0.Final规则引擎教程》获取规则名称和包名详解编程语言
- MongoDB文档键的命名规则
- Linux和windows服务器的Discuz伪静态规则!
- Apache服务器实现301重定向规则
- 提升数据库安全性:建立MSSQL读取监控规则(监控mssql读取规则)
- 整理一下SQLSERVER的排序规则
- PHP句法规则详解入门学习
- FTP服务器的防火墙通用设置规则介绍
- javascript动态添加样式(行内式/嵌入式/外链式等规则)
- thinkphp的URL路由规则与配置实例