ASPNET中实现在线用户检测(使用后台守护线程)
启动后台线程可以用下面的语句:
CheckOnline online=new CheckOnline();
用户可以将它放到GLOBAL。ASAX中,我是没有了,只放到了一个ASPX文件中做简单的测试。如下
//start.aspx
<%@ Page Language="c#" autoEventWireup=true Debug="true" %>
<%@ Assembly Name="Soholife" %>
<%@Import Namespace="System"%>
<%@Import Namespace="Soholife"%>
<%@Import Namespace="System.Collections"%>
<script runat="Server" Language="C#">
void Page_Load(Object sender, EventArgs args)
{
CheckOnline online=new CheckOnline();
}
</script>
<html><head>
<style type="text/css">
td{font-size:12;}
.bgcolor{background:#ffffcc;}
</style>
</head>
<body><center>
</center></body></html>
而我们还需要一个程序来显示当前在线拥护的数据,程序如下:
//online.aspx
<%@ Page Language="c#" autoEventWireup=true Debug="true" %>
<%@ Assembly Name="Soholife" %>
<%@Import Namespace="System"%>
<%@Import Namespace="Soholife"%>
<%@Import Namespace="System.Collections"%>
<script runat="Server" Language="C#">
void Page_Load(Object sender, EventArgs args)
{
OnLineUser temp= new OnLineUser();
ArrayList alluser =temp.alluser;
string str="";
str += "<tr bgcolor=#ffff99>";
str += "<td width=100 align=center class="coolbar">用户</td>";
str += "<td align=center width=150 class="coolbar">登陆时间</td>";
str += "<td align=center width=150 class="coolbar">最近时间</td>";
str += "<td width=100 height=20 class="coolbar">当前位置</td>";
str += "</tr>";
for ( int i = 0 ; i < alluser.Count ; i++)
{
Soholife.User tempuser=(Soholife.User)alluser[i] ;
str += "<tr bgcolor=white>";
str += "<td>" + tempuser.name + "</td>";
str += "<td>" + tempuser.lasttime + "</td>";
str += "<td>" + tempuser.curtime + "</td>";
str += "<Td>" + tempuser.iswhere + "</td>";
str += "</tr>";
}
maininfo.Text=str;
}
</script>
<html><head>
<style type="text/css">
td{font-size:12;}
.bgcolor{background:#ffffcc;}
</style>
<script language=javascript>
function openwindow(url,w,h)
{
window.open(url,"","toolbar=no,menubar=no,directories=no,status=yes,width=" + w + ",height=" + h + ",scrollbars=yes,resizable=yes");
return false;
}
</script>
</head>
<body bgcolor="#ccffcc"><center>
<Br>
<table width=450 bgcolor=white cellpadding="0" cellspacing="0" style="border:none";>
<Tr><td colspan=2 align=center class="bar">当前在线用户</td></tr>
</table><br>
<asp:Label font-size="8pt" id="showmsg" runat="server"/>
<table width=450 bgcolor=white cellpadding="2" cellspacing="1" class="Grid">
<asp:Label font-size="8pt" id="maininfo" runat="server"/>
</table>
</center></body></html>
ASPNET中实现在线用户检测(使用后台守护线程)的更多相关文章
- 在线用户管理--ESFramework 4.0 进阶(05)
无论我们采用何种通信框架来构建我们的分布式系统,在服务端进行用户管理都是非常重要的一个环节.然而用户管理是否应该隶属于通信框架了?这个并不一定,通常来说,用户管理是与具体应用紧密相关的,应该是由应用解 ...
- ASP.NET中在线用户统计
统计在线用户的作用不言而喻,就是为了网站管理者可以知道当前用户的多少,然后根据用户数量来观察服务器或者程序的性能,从而可以直观的了解到网站的吸引力或者网站程序的效率.现在,我们就介绍一个简单明了的方法 ...
- 服务降级 托底预案 Nginx中使用Lua脚本检测CPU使用率,当达到阀值时开启限流,让用户排队
https://mp.weixin.qq.com/s/FZAcQQAKomGEe95kln1HCQ 在京东我们是如何做服务降级的 https://mp.weixin.qq.com/s/FZAcQQAK ...
- servlet就实现在线用户表
在学习servlet的过程中,学习了如何用servlet实现在线用户表. 只有服务器处于开机状态才会有在线用户表的存在,在服务器关机的情况下自然就不存在在线用户表的说法:所以,楼主认为在线用户表的信息 ...
- 基于Redis的在线用户列表解决方案
前言: 由于项目需求,需要在集群环境下实现在线用户列表的功能,并依靠在线列表实现用户单一登陆(同一账户只能一处登陆)功能: 在单机环境下,在线列表的实现方案可以采用SessionListener来完成 ...
- [项目回顾]基于Redis的在线用户列表解决方案
迁移:基于Redis的在线用户列表解决方案 前言: 由于项目需求,需要在集群环境下实现在线用户列表的功能,并依靠在线列表实现用户单一登陆(同一账户只能一处登陆)功能: 在单机环境下,在线列表的实现方案 ...
- 一套海量在线用户的移动端IM架构设计实践分享(含详细图文)(转)
1.写在前面 1.1.引言 如果在没有太多经验可借鉴的情况下,要设计一套完整可用的移动端IM架构,难度是相当大的.原因在于,IM系统(尤其是移动端IM系统)是多种技术和领域知识的横向应用综合体:网络编 ...
- ASP.NET MVC使用SignalR统计在线用户人数
学到新东西就记录一下.也许正好有人需要~~~~~~ 由于需要记录当前在线用户,emmmm又是没做过的... 本来想用数据库的形式,但是想想这么简单的功能百度肯定有.遨游一波百度,有所收获.... 虽然 ...
- ASP.NET MVC Filters 4种默认过滤器的使用【附示例】 数据库常见死锁原因及处理 .NET源码中的链表 多线程下C#如何保证线程安全? .net实现支付宝在线支付 彻头彻尾理解单例模式与多线程 App.Config详解及读写操作 判断客户端是iOS还是Android,判断是不是在微信浏览器打开
ASP.NET MVC Filters 4种默认过滤器的使用[附示例] 过滤器(Filters)的出现使得我们可以在ASP.NET MVC程序里更好的控制浏览器请求过来的URL,不是每个请求都会响 ...
随机推荐
- MAC 上升级python为最新版本
第1步:下载Python3.4 下载地址如下: 下载Mac OS X 64-bit/32-bit installer https://www.python.org/downloads/release/ ...
- Project Euler 89:Roman numerals 罗马数字
Roman numerals For a number written in Roman numerals to be considered valid there are basic rules w ...
- 第二十二章 CLR寄宿和AppDomain
1. 概念解析 CLR Hosting(CLR 宿主):初始启动.Net Application时,Windows进程的执行和初始化跟传统的Win32程序是一样的,执行的还是非托管代码,只不过由于PE ...
- Java API —— Calendar类
1.Calendar类概述 Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段 ...
- IIS发布报错
IIS发布报错一般原因 ISAPI和CGI限制作为IIS与ASP.NET的连接桥梁
- C# Index 定义索---引具体使用2
窗体代码 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;usi ...
- Event-based Asynchronous Pattern Overview基于事件的异步模式概览
https://msdn.microsoft.com/zh-cn/library/wewwczdw(v=vs.110).aspx Applications that perform many task ...
- 注意:C++中double的表示是有误差的
注意:C++中double的表示是有误差的,直接通过下面的例子看一下 #include<iostream> using namespace std; int main() { double ...
- CocoaPods requires your terminal to be using UTF-8 encoding
WARNING: CocoaPods requires your terminal to be using UTF-8 encoding. See https://github.com/CocoaPo ...
- poj 1195 Mobile phones(二维树状数组)
树状数组支持两种操作: Add(x, d)操作: 让a[x]增加d. Query(L,R): 计算 a[L]+a[L+1]……a[R]. 当要频繁的对数组元素进行修改,同时又要频繁的查询数组内任一 ...