private void button1_Click(object sender, EventArgs e) { //开启线程 System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(this.Result));//设置传参线程 Student student = new Student(); student.Id = 1; student.Name = "张三"; student.Gender = 1; student.Birthday = DateTime.Parse("1986-12-12"); object o = student; pictureBox1.Visible = true; button1.Enabled = false; thread.Start(o); } private void Result(object o) { Student stu = o as Student; bool ok = this.Do(stu); this.BeginInvoke(new System.Threading.ThreadStart(delegate() { if (ok) MessageBox.Show("成功", "提示"); else MessageBox.Show("失败", "提示"); pictureBox1.Visible = false; button1.Enabled = true; })); } private bool Do(Student stu) { System.Threading.Thread.Sleep(1000); //执行你更新的方法吧 return true; } public class Student { private int id; public int Id { get { return id; } set { id = value; } } private string name; public string Name { get { return name; } set { name = value; } } private int gender; public int Gender { get { return gender; } set { gender = value; } } private DateTime birthday; public DateTime Birthday { get { return birthday; } set { birthday = value; } } }
Threading 实现
最新推荐文章于 2024-07-23 21:41:15 发布