一个软件,只能限制一个用户在一个地方登陆,登录后,修改服务端的登陆状态为true,退出程序,修改服务端的登录状态为false,这样,下次能正常登陆。可是,突然停电,我测试了一下,服务端的登录状态并没有变成false,使得用户下次不能登陆。
这种情况,该怎么处理呢?

解决方案 »

  1.   

    停电没时间反应的。
    定期报道下如果长时间不报道那就设为false/
      

  2.   

    谁来设为false啊,客户端都掉线了?
      

  3.   

    这个服务器上得有个程序定时检查用户是否在线,如果一段时间没发反,就设置为false允许登录。
      

  4.   

    来电后启动程序时全部设为false
      

  5.   

    虽然我不会编,但是我想你和客户端建立连接后可以通过测试网络连接的方法来判断他是否在线,或者连接后检查你得程序是否正常运行,如果没有找到你得程序就为false,否则为true,timer控件可以设置为500.这样不会加重服务器的运行资源的。
      

  6.   

    你在记一个活动时间呗。如果活动登陆状态为True,当前时间-登录时间>设定值就让他登陆。
      

  7.   

    你学QQ,允许多处登录,但是第二个登录的将前面那个登录的状态给挤掉,强迫前面那个下线,如果是本地双开,通过进程判断就可以了,QQ也是那样的。
      

  8.   

    自己对每一个会话做一个唯一id,如果当前登录会话的id不等于那个为false的会话,则证明有意外啊。同样可以登录的
      

  9.   

    当客户端登陆时,让服务器定期向客户端发送消息,获取客户端时间或者其他东西,有效字符就可以了。
    如果获取失败,那就可以改成false了
      

  10.   


    是指我说的内容?
    如果客户端停电,服务器端不停电,那等客户端通上电,再启动,基本上5、6分钟已经过去了。可以登录了。
    如果服务器端停电,通上电,再启动,时间肯定超过5、6分钟了,只要服务器端排程一开始运行,就会清空登录这个表了。客户端还是可以登录了。
    像SAP、TIPTOP系统,客户端异常退出,通常都要等20、30分钟才能于进入的。(这个可以设定的)