Thread: C# основной форум/Event-based Asynchronous Pattern

Event-based Asynchronous Pattern
MSDN - Event-based Asynchronous Pattern Overview



Re: Event-based Asynchronous Pattern

How do I make event callbacks into my win forms thread safe?


private delegate void EventArgsDelegate(object sender, EventArgs ea);

void SomethingHappened(object sender, EventArgs ea)
{
   //
   // Make sure this callback is on the correct thread
   //
   if (this.InvokeRequired)
   {
      this.Invoke(new EventArgsDelegate(SomethingHappened), new object[] { sender, ea });
      return;
   }

   //
   // Do something with the event such as update a control
   //
   textBox1.Text = "Something happened";
}