zoukankan      html  css  js  c++  java
  • C# WinForm 异步执行耗时操作并将过程显示在界面中

     private void button3_Click(object sender, EventArgs e)
            {
                RunAsync(() =>
                {
                    // Just loop.
                    int ctr = 0;
                    for (ctr = 0; ctr <= 10; ctr++)
                    {
                        Thread.Sleep(2000);
                        RunInMainthread(() =>
                        {
                            textBox1.Text = ctr.ToString();
                        });
                    }
                  
                });
               
                MessageBox.Show("");
            }  // 异步线程
            public static void RunAsync(Action action)
            {
                ((Action)(delegate()
                {
                    action.Invoke();
                })).BeginInvoke(null, null);
            }
            public void RunInMainthread(Action action)
            {
                this.BeginInvoke((Action)(delegate()
                {
                    action.Invoke();
                }));
            }

  • 相关阅读:
    如何实现一个串行promise
    单机,分布式和集群的区别
    ERP & CRM
    CDN working principle diagram
    公众平台服务号、订阅号、企业号的相关说明
    DMZ的原理与应用
    ICP备案接入商
    DMZ主机
    浅析localstorage、sessionstorage
    Repeater+AspNetPager+Ajax留言板
  • 原文地址:https://www.cnblogs.com/computer-lzy/p/8793685.html
Copyright © 2011-2022 走看看