zoukankan      html  css  js  c++  java
  • 多线程同时操作界面使用互斥体

    private void button4_Click(object sender, EventArgs e)
            {
                Mutex m = new Mutex();
                autoevent = new AutoResetEvent(false);
    
                Thread t = new Thread(delegate()
                {
                    Thread.Sleep(500);
                    for (int i = 0; i < 50000; i++)
                    {
                        m.WaitOne();
                        try
                        {
                            label1.Invoke
                            (
                                (MethodInvoker)
                                delegate
                                {
                                    label1.Text = i.ToString();
                                }
                            );
                        }
                        finally
                        {
                            m.ReleaseMutex();
                        }
                    }
                });
                t.Start();
    
                Thread t2 = new Thread(delegate()
                {
                    for (int i = 0; i < 50000; i++)
                    {
                        m.WaitOne();
                        try
                        {
                            label1.Invoke((System.Action)delegate()
                            {
    
                                label1.Text = i.ToString();
    
                            });
                        }
                        finally
                        {
                            m.ReleaseMutex();
                        }
    
                    }
                });
                t2.Start();
            }
  • 相关阅读:
    Ldap遇到了事务管理问题
    Spring-Ldap连接Ldap及简单的增删查改
    枚举与数组的使用
    GDI_TCanvas
    获取鼠标当前位置的相对坐标、模拟鼠标点击事件
    绘制不规则图片、窗体与图形
    Message使用
    泛型_Tlist存储对象
    控件Owner和Parent的区别
    鼠标拖放
  • 原文地址:https://www.cnblogs.com/perock/p/3142411.html
Copyright © 2011-2022 走看看