パブリックデリゲートvoidinvokeDelegate();
public部分クラスForm1:Form
{ public Form1() { InitializeComponent(); }
a = a + "B"; }
MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ a);
}
private void StartMethod()
{ MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "CCC"); button1.Invoke(new invokeDelegate(invokeMethod)); MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "DDD"); }
private void invokeMethod()
{ MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "EEE"); }
/// <summary>
///首先進行行“ AAA”、再同時順行“ BBB”和“ CCC”、最后同時行行“ DDD”和“ EEE”
/// </ summary>
/// <param name = "sender"> </ param>
/// <param name = "e"> </ param>
private void button2_Click(object sender、EventArgs e)
{ MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "AAA"); スレッドinvokeThread = new Thread(new ThreadStart(StartMethod2)); invokeThread.Start(); string a = string.Empty; for(int i = 0; i <3; i ++) { Thread.Sleep(100); a = a + "B";
MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ a);
}
private void StartMethod2()
{ MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "CCC"); button1.BeginInvoke(new invokeDelegate(invokeMethod)); MessageBox.Show(Thread.CurrentThread.GetHashCode()。ToString()+ "DDD"); } }