摘要: proto语言有自己的 数据类型(Field Types),字段的范围关键字(required,optional,repeated),每个字段在二进制序列中指定的排序(number tag),默认值定义[default=''], 以message 为结构体标识,兼容 子类型,枚举类型. 阅读全文
posted @ 2011-05-12 16:22 林石 阅读(3410) 评论(0) 推荐(0) 编辑
摘要: 1.truncate table tablename 当然前提是你必须要有这么高的权限.2.也必须要有极高的权限,"调用方必须是表所有者"--每次要删除表中的数据(delete from tableName),下次使用时,表中的自增ID就会从上次的ID依次递增。--只要在delete执行结束后,执行 dbcc checkident('tableName',reseed,0) 自增列即会从"1"开始。附:@@IDENTITY,SCOPE_IDENTITY,IDENT_CURRENT的区别@@IDENTITY--是得到当前会话的所有范围的最后 阅读全文
posted @ 2011-05-11 13:43 林石 阅读(550) 评论(0) 推荐(0) 编辑
摘要: 描述:在分析游戏服务器端游戏消费日志项目中使用到Regex.Split解析文本.该文本中每行是通过\t来间隔每个字段.但是碰到无法识别的乱码时,此种解析方式无法正常解析字符串.分析:由于现在的游戏服务器端涉及到的语种语系非常繁多,并且,现在的用户非常喜欢使用"火星文",因此,在日志中涉及到角色名称的地方,经常会出现不可识别的乱码.而我们在编程过程中由于都是在默认在简体系统下开发,打开文本文件编码均为GB2312,由于是UNICODE字符集,因此,相隔两位会乱码如果可以被识别为一个UNICODE字符,那么就无法正常解析出\t 解决:通过改变文件打开的编码格式,为UTF-8 不 阅读全文
posted @ 2011-05-10 17:59 林石 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 不支持一个 STA 线程上针对多个句柄的 WaitAll。题设:在.NET开发多线程控制台程序过程中,由于业务要求,需要实现"一次扫描多笔订单",然后,通过多线程实现并发提交的逻辑.因此,在控制台程序中采用了多线程记录.由于下一次操作必须等待所有的记录并发提交完成后,才能进行下一步循环操作.在多线程操作后,使用了WaitAll命令.但是在此过程中,报异常"不支持一个STA 线程上针对多个句柄的WaitAll ".分析:经过研究MSDN,发现,在控制台程序的每个主函数Main之前,都有一个[STAThread]方法属性,该属性标识当前控制台程序的线程模型为 阅读全文
posted @ 2011-05-10 17:35 林石 阅读(1807) 评论(0) 推荐(0) 编辑
摘要: 关于FusionCharts图表宽度width的设置问题导致图表显示异常的解决办法 题设:经常使用FusionCharts图表的朋友可能会遇到这个问题.就是在FusionCharts显示的时候有时候会显示出不完整的图表,现象是只显示标题,但是标题不居中,同时看不见图表,或者是只显示Y轴,而X轴的数据全部都重叠在Y轴上,完全无法看清.查看FLASH加载完成,并且FLASH右键菜单弹出正常.这个时候,如果页面刷新几下就正常了.或者页面前进,后退一下也会正常.如下图所示:分析:刚开始的时候以为是因为网络慢,下载FLASH不实时,导致脚本展现无法同步造成的.后来,发现是有的机子会出现这种情况,有的机子 阅读全文
posted @ 2011-05-10 17:28 林石 阅读(1547) 评论(0) 推荐(0) 编辑
摘要: 如果你需要绘制流程图、树状图或其他类型的图表,其实有大量的应用软件可以做到,比如微软的Visio等。但有什么方便得过,只需网页浏览器,又不用注册,就可使用的Diagramly呢?你只要点开这家网站,你会发现Diagramly非常类似微软Visio,又极容易使用。 只要你曾经使用过Visio或其他任何流程图绘制软件,你应该对Diagramly的界面感到相当熟悉。只需拖放图形、文本和图标到网格,并用箭头连接起来,就可制成流程图。虽然有很多网页应用都可以媲美桌面软件,但大部份在运行中的性能都不太令人满意,而Diagramly使用却十分流畅。 Diagramly界面支持中文,可输出为几种图像格式,并. 阅读全文
posted @ 2011-05-03 10:56 林石 阅读(389) 评论(1) 推荐(0) 编辑
摘要: 1.首先找到你的.NET框架的目录 %systemroot%\Microsoft.NET\Framework 文件夹2.找到对应版本文件夹下的mscorlib.dll3.参照以下列表,根据mscorlib.dll的版本,就可以判断出服务器目前的.NET版本咯.NETFramework版本修订版版本1.0原始 RTM.NET Framework Service Pack 1.NET Framework Service Pack 2.NET Framework Service Pack 31.0.3705.01.0.3705.2091.0.3705.2881.0.3705.60181.1原始 RT 阅读全文
posted @ 2011-04-01 16:27 林石 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 描述:执行SQLSERVER 查询操作过程中,提报异常"由于数据移动,未能继续以NOLOCK方式扫描"分析:当使用 NOLOCK 锁定提示或设置为 READ UNCOMMITTED 的事务隔离级别扫描时,可能会删除扫描当前位置处的页。当这种情况发生时,Microsoft® SQL Server™ 将无法继续扫描。该错误终止查询。解决:重新提交查询或删除NOLOCK锁定关键字。 阅读全文
posted @ 2011-03-22 15:56 林石 阅读(815) 评论(0) 推荐(0) 编辑
摘要: 描述:一直以来我都认为DateTime.Ticks的单位是10^-3秒,而且一直认为 1微秒 = 10^-3秒,囧rz.分析:直到某天无意中看到MSDN:public long Ticks { get; }此属性的值表示自 0001 年 1 月 1 日午夜 12:00:00 以来已经过的时间的以 100 毫微秒为间隔的间隔数。and then..."100毫微秒"是神么浮云!!!!,"毫微秒"又是神么浮云!!!囧rz.囧rz.囧rz.解决:以下是常识,有常识的人请飘过....:======================================= 阅读全文
posted @ 2011-03-17 18:30 林石 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 描述:目前系统使用到SQLLite存储本地数据,由于数据量级在百万级以上,同时又要根据不同需求,对这百万级数据进行各种条件的排序并保存.分析:为了达到对不同条件排序的效果,考虑使用到持久化视图.SQLLite虽然可以创建视图,但是视图是只读的(Views are read-only in SQLite),SQLLite本身是无法创建持久化视图的.解决:in many cases you can use an INSTEAD OF trigger on the view to accomplish the same thing. 可以通过在视图上创建INSTEAD的触发器来实现对视图数据的修改. 阅读全文
posted @ 2011-03-17 17:29 林石 阅读(619) 评论(0) 推荐(0) 编辑