問題タブ [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 投票する
3 に答える
4722 参照

c# - 非同期の Task メソッドを起動して忘れると、呼び出されないことがある

私は非同期メソッドを持っています:

ほとんどの場合、次の方法でこのメソッドを呼び出します。

この呼び出しは期待どおりに機能します。しかし、どこかで、このメソッドをファイア アンド フォーゲットとして呼び出す必要があります。

この場合、 Taskが実行されて完了する場合もありますが、タスクがまったく呼び出されない場合もあります (または、内のDoSomethingAsync()いくつかの を呼び出すが、最後の を完了しない場合もあります)。awaitDoSomethingAsync()await SaveAsync();

私は、タスクが次のコードによって確実に起動され、忘れられるようにしようとしています:

ただし、これは期待どおりには機能しません。だから私の質問は:

  1. 常に実行して完了するDoSomethingAsync()ことなく呼び出しを行う方法は? await(AppDomainの再起動/クラッシュは気にしません)

  2. async/await内のすべてのコードを削除しDoSomethingAsync()て に置き換えるawait.ContinueWith()Task DoSomethingAsync()(メソッド宣言に含まれていないasync) への呼び出しが呼び出され、確実に完了します (AppDomain の再起動/クラッシュの場合は無視します)。 Task が 10 分後に呼び出されたら嬉しいと思います)。

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

c# - Tmeout を設定して WebClient を使用する Fire & Forget

WebClient に関して質問があり、誰かが私を助けてくれることを望んでいました。この質問が何度か聞かれたことは知っていますが、良い答えが見つかりませんでした。

URL を呼び出す必要があるシナリオが 2 つあります。a) URL からの応答は必要ありません (Fire&Forget)。b) URL は JSON を返すため、データを取得するには、サーバーで処理が完了するまで待つ必要があります。

a) にいくつか問題があり、自分が行ったことが理にかなっているのかどうかわかりません。Fire&Forget を実装するために、WebClient のタイムアウトを「小さい」500 ミリ秒に設定しています (コードは以下にあります)。私の質問は次のとおりです。

a)これは良いアプローチですか、それともまったく意味がありませんか?b) 500 ミリ秒待つのは理にかなっていますか? タイムアウトをゼロに設定できますか? c) このアプローチは安全ですか? 処理にかかる時間は気にしませんが、Web サービスを開始できることを確認したいと考えています。以下のコードは、Web サービスが起動されることを保証していますか? そうでない場合、Timneout ではない例外が発生しますか?

どうもありがとう !

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

javascript - 返信を待たずにフォームを投稿する方法

フォームを (javascript で) 投稿し、ブラウザが応答を待たないようにするにはどうすればよいですか? これはまったく可能ですか?私が作成したいパターンは、一種の「Fire and Forget」パターンです。送信を実行するコードは次のとおりです。

(ドメイン外のエンドポイントに投稿する必要があるため、フォームの投稿はこの方法で行われます。したがって、CORSの問題を克服する必要があります。)

0 投票する
3 に答える
701 参照

asp.net-mvc - この MVC Fire and Forget アプローチは悪い設計ですか?

タスクを実行するコントローラーのアクションがあり、最後にユーザーに確認メールを送信します。電子メールの部分はそれほど重要ではないので、電子メールの送信で例外がスローされた場合にアクションを中断させたくありません。また、HTTP 応答が電子メールを待機するのを待ちたくありません。いずれかで送信されます。私はこれを火事にして忘れるものにしたい.

一言で言えば、これは私がそれにアプローチした方法です:


このアプローチは適切ですか?

0 投票する
0 に答える
62 参照

.net-4.0 - アプリケーション FireandForget を作成する方法?

以下は、.Net 4.0 で Http モジュールを開発するために使用したコードです。しかし、プログラムを実行すると、アプリケーションが実行されるまで数秒待っていることがわかりました。しかし、私はそれが FireAndForget() であることを望んでいます[結果を待つべきではありません]。どうすれば FireAndForget にできますか?

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

c# - IRegisteredObject の実装時に stop メソッドが呼び出されない

w3wp.exe が IIS によってシャットダウンされているときに、1 行のログを書き込もうとしています。ただし、そのログが表示されるのを見たことはありません。

また、ダミーのasp.net mvcアプリを使用してローカルで試します。コントローラーでは、ダミーの for ループを実行してリクエストを続行し、同時に以下の検出器のコピーを持っています

https://katanaproject.codeplex.com/SourceControl/latest#src/Microsoft.Owin.Host.SystemWeb/ShutdownDetector.cs

w3wp.exe proecssを強制終了すると、停止方法がトリガーされるはずです。しかし運がない。

誰でも何か考えがありますか?

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

udp - あるプロセスから別のプロセスへのファイア アンド フォーゲット メッセージングを実装する方法は?

ボタンをクリックすると、あるプロセスから別のプロセスに単純なメッセージが送信されます。メッセージは、文字列引数を持つ単純なコマンドであり、合計で 50 文字程度 (間違いなく 1k よりもはるかに少ない) になります。

そして以下を満たす:

  • シンプルでなければならない(つまり、本格的なメッセージング システムではない)
  • Windows で実行する必要があり、Unix で実行する必要があります
  • 下の図は私の実際の要件を示していますが、主要なプログラミング言語/ランタイムで動作するはずです
  • パフォーマンスは重要ではありません。このような単純なメッセージの場合でも、送受信サイクル全体に 1 ミリ秒以上かかることはありません。
  • 「保証付き」等不要
  • 送信者は、受信者がメッセージを受け取ったかどうか、またはそもそも受信者がいるかどうかを気にしません
  • 暗号化/認証/承認は不要

ウィキペディアには、 IPC を実行する方法の長いリストがありますが、最も簡単なのは非接続ソケット オプションのようです。

JSON (de )シリアライザー?

ここに画像の説明を入力