問題タブ [fire-and-forget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
741 参照

c# - 生成されたプロキシ/クライアントを使用せずに、ファイア アンド フォーゲット WCF サービス アクションを使用することは可能ですか?

前提条件

  • サービス プロジェクト タイプ: .net 3.5 クラス ライブラリ
  • サービスホスト: IIS 7.5 / ASP.NET 互換モードがオンになっています

サービスに定義された単一のアクションDocumentsServiceUploadDocument(Stream stream)、HTTP ( webHttp binding ) 経由でアクセスできます。

で飾ってみました[OperationContract(IsOneWay=true)]

さらに、次の行をコメントアウトしました。

サービス自体が 200 のステータスを設定するため、すべてが問題ないため、役に立たないと思ったからです。

サービス用に生成されたWCFクライアントは使用しません。ファイルを送信するには、プレーンなajaxリクエストを使用します。

問題

これは、ファイア アンド フォーゲット リクエストではありません。同期とブロックです。どうすれば本当のファイア アンド フォーゲット アクションを実行できますか? C#プロキシ クライアントなしで使用できますか?

編集

  1. クラスを使用できませんTask。.net Framework 3.5 にバインドされています。
  2. さて、私には 2 つの部分があります:アップロード自体後処理です。ファイルがアップロードされたときに、このパーツをチェーンするか、非同期後処理をインスタンス化するにはどうすればよいですか?
0 投票する
0 に答える
134 参照

c# - IIS でホストされる WCF Web サービス、非 .Net 呼び出し元の Fire and Forget メソッドを作成

IIS 7.5、.Net Framework 4.5.1 でホストされている WCF Web サービスがあります。.Net 以外のアプリケーションから呼び出されるファイア アンド フォーゲット メソッドが必要です (.Net プロキシを作成できません)。

これが「真のファイア アンド フォーゲット」です。呼び出し元は、成功または失敗を気にしません。

Task.Run() ですべてのコードをラップするのと同じくらい簡単ですか? これで十分ですか?

0 投票する
2 に答える
3521 参照

javascript - ExpressJs(NodeJs) Fire & Forget

私は現在、express js で API を開発しています。アナリティクスをDBに保存する関数を書きたいのですが、その関数をファイアアンドフォーウェイで呼び出すことができるはずです。関数はパラメーターを受け入れ、その作業を行う必要があります。これは別のスレッドのように機能する必要があり、現在のコードの実行はその応答を待機するべきではありません。たとえば、Akka アクターが Java で動作する方法です。誰かがそれを行う方法や参照するリンクを提案できますか?

0 投票する
1 に答える
654 参照

oracle - EJBでJPAクエリの結果を待たない方法

JPA クエリの結果が ejb になるのを待たない方法があるかどうかを知りたい Oracle データベースで大規模な複雑な処理を行う JPA を使用してストアド プロシージャを呼び出す必要があることはわかっjavax.ejb.Asynchronousたが、そのためのスレッドを作成したくないそれは、ただ呼び出して、そのような手順を忘れて

タナクス

0 投票する
2 に答える
4519 参照

c# - Task.Run を使用した Fire & Forget メソッドが機能しない

Task.Run成功せずに使用しようとする多くのコードを読みました。

私が達成したいこと:

  • ASP.NET WebForm イベント (クリック イベント ハンドラー) で、Fire & Forget メソッドを呼び出します (現在の実行フローをブロックしません)。

私が試したことと、なぜそれが機能しないのか理解できません:


最初のバージョン:


2 番目のバージョン:

そこで、データベースにレコードを挿入する Fire & Forget メソッドを呼び出しますが、レコードが挿入されません。

Fire & Forget メソッドの呼び出しの前後に挿入が行われます。

問題を解決する方法がわかりません。

0 投票する
1 に答える
536 参照

c# - パフォーマンスに影響を与えずに火と忘れを適切に使用する方法は?

私はこの質問をしましたが、多くの回答を得ることができず、私が得たものは私の問題を解決しませんでした. ですから、ここで私は別の方法でもう一度尋ねようとしています。

製品フィード ファイルをシステムに処理するプロジェクトがあります。1 つの特定のフィード ファイルでは、プロセス全体に約 40 ~ 50 分かかります。これで、フィードから画像を処理するを作成し、ストレージ クライアントを作成WebJobして、最初のプロジェクトから に画像の URL を送信しています。WebJobそれを自分のプロジェクトに入れると、処理時間が大幅に増加したので、Task.Runto useFire and Forgetアプローチで使用してみましたが、それでも全体の処理時間は約 2 時間になりました。

ストレージ キューを作成するメソッドを呼び出す方法を次に示します。

そして、これがキューメッセージを作成するための私のコードです

処理時間が 2 倍になった理由がわかりません。また、それを回避する方法も見つかりません。これを解決するのに役立つアイデアは本当に役に立ちます。

編集:QueueUtility静的クラスとメソッドを静的メソッドに変えると、助けになるようでした。ただし、方法や理由はわかりません。