进不了。
这个function是服务端的,根据http协议的特点这时候客户端和服务端连接已经断开,怎么监听?
正如楼上所说,在线人数统计不可能非常精确的。

解决方案 »

  1.   

    我找到了,当用户关闭IE时有相应的事件,我就在JAVASCRIPT中处理一下就可以了,呵呵
      

  2.   

    这个办法还是不太可行,到底有没有可以统计当前有效SESSION的办法
      

  3.   

    http://expert.csdn.net/Expert/topic/2674/2674179.xml?temp=.1891748
    这是我的一点心得。可以实现统计人数。而且用户关闭ie的话也可以判断他是否已经离线
      

  4.   

    package com.bbs.util;import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    public class Listener implements HttpSessionListener{private static int counter=0;
    private static int activeCount=0;public void sessionCreated(HttpSessionEvent evt){
    long times=evt.getSession().getCreationTime();
    System.out.println("A new session was created at"+
    new Date(times));

    counter++;
    activeCount++;
    }public void sessionDestroyed(HttpSessionEvent evt){
    activeCount--;
    }public static int getActiveCount(){
    return activeCount;
    }
    }
    <listener>
      <listener-class>
       com.bbs.util.Listener
      </listener-class>
     </listener>
     
    <session-config>
      <session-timeout>
      1
      </session-timeout>
     </session-config> 记得设置session-timeout
      

  5.   

    这个没有十分有效地解决办法吧,以前做过一个类似的是这么解决的,关闭窗口的时候,用javascript弹出一个窗口,可以设置显示在屏幕以外,调用用户退出的动作,然后马上自动关闭,如果网络速度快,会几乎感觉不到这个动作