私はウェブページから2000までの電子メールを1つ送信する必要があるプロジェクトの一部を持っています。オープンソースのバグトラッカーの1人は、スレッドを使用して電子メールを送信しましたが、バグが詰まっていました。C#Webページから大量の電子メールを送信する最適な方法は何ですか?
誰かが2000までの電子メールを送信する手続きをどのように作成できるか考えているかどうかを知りたいだけですか?
私はすべての電子メールを処理するのに時間がかからないので、私は同僚の一人が1つのプロセス(1回に1つの電子メールを送信する通常のルーチン)として残すように言われました。右のように見えないし、私はスレッドを使用したい...多分私は複雑なルーチンが好きですか?
[エクストラ] 私のようなものがあります: foreachの(emailAddressesの文字列電子メール) { はMailMessageはMailMessage =新しいはMailMessageを(); mailMessage.To.Add(...) ... SmtpClientクライアント=新しいSmtpClient(); client.Send(mailMessage); }
おそらくhttp://stackoverflow.com/questions/1607178/background-task-with-an-asp-net-web-applicationを参照してください。しかし、私が2000年に読んだ他のスレッドからは、すぐにたくさんあり、SMTPサーバーはあなたがスパムしていると推測するかもしれません - 送信するバックグラウンドタスクだけでなく、より多くの問題があるかもしれません。 – Rup
スレッドを使用する場合、いくつ作成しますか?あなたはまだ1つのスレッドで多数の電子メールを処理しているでしょう。また、スレッド数が多いほど、電子メールを送信するための各スレッドが使用できる帯域幅が少なくなり(動作の遅い部分)、元の簡単な(シングルスレッドの)ソリューションと同等のパフォーマンスが得られます。 –
あなたは正しいです。このアイデアはメールを処理するためのスレッドです。 – Rob