2012-02-07 82 views
3

私は私が非同期操作は、このコンテキストでは許可されませんthis post「非同期操作は、このコンテキストで許可されていません」

約尋ねた彼が自動的に生成された非同期のwebMethodsを呼び出すときに、以下の例外を取得します。非同期操作が真 に設定する非同期属性と非同期操作だけ前pageディレクティブで追加Async = True

Googleの検索結果にページ上で起動することができますが、様々な人々が指摘している持っている必要が を開始しますこれにより、ページが'Blocking'(非同期操作ではない)になります。では、Webサービスメソッドを呼び出す際に、どのように非同期操作を行うのですか?

答えて

2

チェックアウトthis answer。私はそこから答えをコピー/ペーストしませんが、議論をいくつか拡張します。

回答が正しいとは限りません。 'EndInvoke'がないので、このメソッドが呼び出されるたびにリソースリークが発生します。 See this discussionなぜそれは大丈夫ではないのですか?

代わりに、デーモンスレッドを起動するか、MSMQから読み込み、そこで長時間実行されているタスクを処理するプロセス全体を作成することをお勧めします。

関連する問題