Pump Messages During Long Operation
<blockquote>
  <p>The CLR has been unable to transition from COM context 0x1b2938 to
  COM context 0x1b2aa8 for 60 seconds. The thread that owns the destination
  context/apartment is most likely either doing a non pumping wait or
  processing a very long running operation without pumping Windows messages.
  This situation generally has a negative performance impact and may even lead
  to the application becoming non responsive or memory usage accumulating
  continually over time. To avoid this problem, all single threaded apartment
  (STA) threads should use pumping wait primitives (such as
  CoWaitForMultipleHandles) and routinely pump messages during long running
  operations.i used smtpClient class to sending mails</p>
</blockquote>

<p>I want to send some emails with 3 kb/s connection speed but after 60 the error will raised.</p>

<p>Can anyone offer a best and complete solution in C#?</p>
