asp.net多线程在web页面中简单使用

需求:
一个web页面 default.aspx 里面有两个控件GridView1,GridView2,通过两个线程分别加载绑定数据。

绑定GridView1:
void BindCategory()
    {

SqlConnection conn = ReturnSqlconn();
        SqlCommand comm = new SqlCommand("select * from category", conn);
        conn.Open();
        SqlDataReader sdr = comm.ExecuteReader();

GridView1.DataSource = sdr;
        GridView1.DataBind();
    }

绑定GridView2:

void BindNews()
    {
        SqlConnection conn = ReturnSqlconn();
        SqlCommand comm = new SqlCommand("select * from News", conn);
        conn.Open();
        SqlDataReader sdr = comm.ExecuteReader();

GridView2.DataSource = sdr;
        GridView2.DataBind();

}

加载两个方法,绑定数据:

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            try
            {
                Thread categoryThread = new Thread(new ThreadStart(BindCategory));
                Thread newsThread = new Thread(new ThreadStart(BindNews));

categoryThread.Start();
                newsThread.Start();

categoryThread.Join();
                newsThread.Join();
            }
            catch (Exception ex)
            {
                Response.Write(ex);
            }
        }
    }

实现效果

注意:
categoryThread.Join();
newsThread.Join();
这两个函数很关键,否则导致页面绑定失败;Join方法使创建的2个线程与页面加载同步;Join在MSND上的解释是:在继续执行标准的 COM 和 SendMessage 消息泵处理期间,阻塞调用线程,直到某个线程终止为止。

通过此方法可以实现单个页面的多线程处理以提高效率。

北京网站建设

时间: 2024-10-12 17:37:19

asp.net多线程在web页面中简单使用的相关文章

如何在Web页面中集成文件上传功能

当前,个人主页制作非常流行.当用户开发好自己的页面时,需要将文件传输到服务器上,解决这个问题的方法之一 是运行FTP服务器并将每个用户的FTP默认目录设为用户的Web主目录,这样用户就能运行FTP客户程序并上传文件到指定的 Web目录.由于Windows NT 和 Windows98均不提供直接的基于窗口形式的FTP客户程序,用户必须懂得如何使用基于命令行 的FTP客户,或掌握一种新的基于窗口形式的FTP客户程序.因此,这种解决方案仅对熟悉FTP且富有经验的用户来说是可行 的. 如果我们能把文件

通过ASP生成html纯静态页面的简单示例

本站收录这篇文章通过ASP生成html纯静态页面的简单示例,详细解说文章中相关静态 asp 技术与知识,欢迎能给大家一些在这方面的支持和帮助!下面是详细内容: 原理:通过浏览器传送变量,如 http://127.0.0.1/shengcheng.asp?id=90 代码:if SaveFile("/new/"&id&".html","http://127.0.0.1/news.asp?id="&id&"&

Asp.Net MVC 4 Web API 中的安全认证-使用OAuth

Asp.Net MVC 4 Web API 中的安全认证-使用OAuth 各种语言实现的oauth认证: http://oauth.net/code/ 上一篇文章介绍了如何使用基本的http认证来实现asp.net web api的跨平台安全认证. 这里说明一个如何使用oauth实现的认证.oauth大家可能不陌生.那么这里需要注意的是我们使用的是.net平台一个比较好的开源oauth库. DOTNETOPENAUTH. 就像上图所示,我们需要一个ISSSUE Server来给我们一个token

web页面中可以包含多个对象

# encoding=utf-8 #python 2.7.10 #xiaodeng #web页面中可以包含多个对象 #HTTP权威指南 10页 #应用程序完成一项任务时通常会发布多个http事务.如:web浏览器会发布一系列http事务来获取一个包含了丰富的图片的web页面. #http事务怎么运作呢? 1.执行一个事务来获取描述页面布局的html框架 2.然后发布另外的http事务来获取嵌入的图片.图像.java小程序.这些资源可能在不同的服务器上. 因此: 一个web页面不是单个资源,通常是

web页面中参数的传递方法

在web页面中参数的传递方法多样,主要有以下几种: Viewstate,Querystring,Session, Application,Cookie,Cache. Viewstate: 特点:服务启启动的各种控件的视图状态:包括控件的所有属性值:Enableviewstate可以启用和禁用视图状态:        优点:防止新产生一个页面实例后,丢失前一个页面的状态信息: 例如:在用户登录注册验证过程中,无须使用导致服务器往返行程的代码,我们只需要在客户端进行验证就可以了.另外有些控件的初始化

使用textarea标签按Enter键后web页面中成换行 vue

对于textarea标签的换行问题,其实就是要将textarea里的Enter键替换成web页面中"<br/>". 以下是我的一些方法. 首先我是写一个方法(methods) formatSolution(s) { if (s) { return s.replace(/\s/g,'<br/>') } else return '' }, 然后在到html找到相应的位置. <tbody> <tr v-for="(x,index) in f

php中调用这个功能可以在web页面中显示hello world这个经典单词

php程序写的时间长了,自然对他所提供的功能了如指掌,他所提供的一大堆功能,真是觉得很好用,但有时候会发现php也缺少一些功能,自己总是会产生为php添加一些自定义的功能的想法.久而久之,终于今天憋不住了,开始动手研究如何添加. 下载一个php的源代码包,这里使用的是php 4.0.5版,解压后会看到php的根目录下会有README.EXT_SKEL这样一个文件,打开详细阅读了一下,发现了一个非常好用的工具,这个工具可以帮你构建一个空的php扩展,然后你向里面添加相应的代码就可以完成你自己的功能

FineBI如何在web页面中嵌入式集成

1. API嵌入集成 1.1 描述 FineBI是基于B/S架构的浏览器/服务器模式,现在用户开发的系统基本上趋向于B/S架构的浏览器/服务器模式,因此有些页面完全可以直接采用web页面嵌入式集成的简易方式完成集成.而且些因为框架的原因可以采用json的调用方式进行集成.通过集成,用户从自己的系统通过链节使用浏览器访问FineBI的服务器,从而在自己系统内调用BI的web页面,来实际嵌入式集成.这种集成通常会有两种方式:一种是直接使用URL链节,另一种方式是通过js的调用json来获得分析模板.

WEB页面中常见的四种控件的必须的测试

以下为常规的需求,除非需求有明确说明,如密码输入框中可以输入空格. 输入框 1. 为空,但页面中明确说明不能为空(带有星号或者只有这一个输入框),有以下两种情况: a. 不进行输入或者使其为空:焦点离开后应有相应的提示,提交后页面无跳转并仍有相应的提示. b. 输入框中存在一个或者多个空格:焦点离开后空格被自动清除并有相应的提示,提交后页面无跳转并仍有相应的提示. 2. 输入长度超限,有以下两种情况: a. 可以输入任意长度的字符:焦点离开后应有相应的提示,提交后页面无跳转并仍有相应的提示. b