Windows2003, VC2008因为服务器端会有大量用户登录,记录每个用户登录时间的时间有两个办法:
一:对每个用户登录时采用GetLocalTime()获取登录时间
二:在进程启动时GetLocalTime() 在格式转换到t和GetTickCount() t1,然后每个用户登录后再GetTickCount() t2, 用t2-t1+t来获取当前时间。请问哪种办法比较好

解决方案 »

  1.   

    应该用GetLocalTime(),明显调用一次就OK,效率高啊。
      

  2.   

    当然用GetLocalTime()
    另外GetTickCount()有 49.7 天的循环限制
    the time will wrap around to zero if the system is run continuously for 49.7 days. 
      

  3.   

    GetLocalTime我不知道原理。
    GetTickCount()的效率非常高,因为他就是访问一个全局变量而已。
      

  4.   

    不要计较这一点执行时间的差异,在硬件上投入吧GetTickCount不是用来表达时点的,而是用来表达时长的,用在楼主的场合并不合适服务器的编程,健壮性永远是第一位的,效率只能排在第二:)