下記のコードの様に重たい処理をしている間、他のボタンも押せるようにしてるのですが
他のボタンを押すときに1回では反応しなくて、2回目でようやく動くようになっています。
これを1回で動かせるにはどうしたらいいのですか?
ちなみに、1回目を押した時は最初に押したボタンがなぜか動いてしまいます。

while (true)
{
System.Threading.Thread.Sleep(1000); // 何か重たい処理をしている
System.Windows.Forms.Application.DoEvents();
}