Automating the InvokeRequired code pattern Automating the InvokeRequired code pattern multithreading multithreading