現在開発中の WCF サービスに、結果をユーザーに返した後に何らかの作業を行いたいメソッドがあります。
サービスのユーザーは、データベースに保存された「アイテム」を送信してから、他のサービスやその他の処理に多くの時間 (数分) かかる可能性があるものを呼び出して処理します。問題は、ユーザーがアイテムのデータベース ID だけを知っていればよいということです。
そのため、すべての作業が完了するまでユーザーを待たせたくありません。System.Threading.Tasks.Task を開始して、次のように戻る直前に、このような重労働を実行することは合理的な解決策でしょうか。
int id = InsertIntoDB(item);
Task.Factory.StartNew(() => HeavyProcessing());
return id;