ワンクリックで20000を超えるアラートメールを送信する必要があり、1分あたりに送信されるメールの数を制限したいと考えています。
送信するたびにSystem.Thread.Sleep(1000)を与える以外に、SmtpClientと一緒にこれを行うために使用できる組み込み/代替の方法はありますか?
System.Thread.Sleep (1000)は、メールサーバーが同時に処理できる限られた数の接続を克服するのに役立ちますか?
ワンクリックで20000を超えるアラートメールを送信する必要があり、1分あたりに送信されるメールの数を制限したいと考えています。
送信するたびにSystem.Thread.Sleep(1000)を与える以外に、SmtpClientと一緒にこれを行うために使用できる組み込み/代替の方法はありますか?
System.Thread.Sleep (1000)は、メールサーバーが同時に処理できる限られた数の接続を克服するのに役立ちますか?
あなたは正しい方向に進んでいると思います。
デフォルトでは、SMTPclientは1分あたりに送信されるメールを制限する方法を提供していません。したがって、スリープを使用することがそのための1つの方法です。
アプリケーションを応答性の高いものにするために、スレッドを使用できます。
それらをMSMQでキューに入れ、別のプロセスにその作業を行わせることをお勧めします。そうすれば、アプリケーションは、それらが送信されていること、または発生する必要があることをユーザーに通知できます。