为什么下面代码执行后没有什么效果<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
        <asp:Label ID="Label1" runat="server" Text="Label1"></asp:Label><br />
        <asp:Label ID="Label2" runat="server" Text="Label2"></asp:Label><br />
        <asp:Label ID="Label3" runat="server" Text="Label3"></asp:Label><br />
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
    </form>
</body>
</html>    protected void Page_Load(object sender, EventArgs e)
    {
        
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        start();
    }
    public void start()
    {
        Thread th1 = new Thread(new ThreadStart(step1));
        th1.Start();
        Thread th2 = new Thread(new ThreadStart(step2));
        th2.Start();
        Thread th3 = new Thread(new ThreadStart(this.step3));
        th3.Start();
    }    public void step1()
    {
        string s = "";
        for (int i = 0; i < 10000000; i++)
        {
            s = i.ToString();
        }
        this.Label1.Text = "Lable1:" + s;
    }    public void step2()
    {
        string s = "";
        for (int i = 0; i < 1000000; i++)
        {
            s = i.ToString();
        }
        this.Label2.Text = "Lable2:" + s;
    }    public void step3()
    {
        
        for (int i = 0; i < 100000; i++)
        {
            s = i.ToString();
        }
        this.Label3.Text = "Lable3:" + s;
    }
    

解决方案 »

  1.   

    没有 postback
    看不到变化
      

  2.   

    控件线程和开启线程,不在一线程内别说是asp.net 就是别的语言,别的操作系统,这样也不可能搞得定
      

  3.   

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
     
            }
        }是这样吗
      

  4.   

    没有postback  aspx页面与服务器端是断开的  后台线程在运行 但前台页面并不知道
    这样用线程是没法控制前台控件的用AJAX  异步调用后台方法就行了
      

  5.   

    可不可以考虑调用的现成返回值,然后把这个返回值,赋给label