問題タブ [retry-logic]

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 に答える
2596 参照

java - 再試行ロジックを持つメソッドの junit テスト ケースを作成する方法

再試行メソッドは、特定のファイルのフォルダーを正確に調べ、存在する場合はファイルを返します。最大再試行回数は 3 で、2 回の再試行の間に 1 分間スリープします。最大再試行後にファイルが存在しない場合は、何らかの例外がスローされます。

メソッドはこのようなものです

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

haskell - タイムアウト時に IO アクションのブロックを再試行する方法は?

IOHaskellでブロッキングアクションをどのように処理しますか? IOこのアクションをスコープ内に配置し、別のメソッドからこのスコープを管理するにはどうすればよいですか? タイムアウトに達した場合は、このメソッドを再度呼び出します。abort通常、他の言語では、設定可能な時間内に結果が得られない場合は、おそらくこれを別のスレッドに入れます。(タイマーは外付けです。)

私の場合: いくつかあり、タイムアウトでアクションretriesを実行したいとしましょう。数が0 より大きい場合にのみ、タイムアウトの有効期限が切れた後にアクションが呼び出されるように、タイムアウト スコープにアクションIOを配置するにはどうすればよいですか。IOretries

基本的に: (私はまだ Haskell のソケット ライブラリを調べていません) のIOようなアクションを考えると、それがブラック ボックスであると仮定します。ioMethod::IO String

この最後の条件/行をモデル化する方法がわかりません。

PS私はまだHaskellでのスレッド化に慣れていません(ここでは初心者です)。タイムアウトされたスコープは別のスレッドで実行する必要があると思います。何らかの方法でメインプログラムからそれをチェックし、それを思い出す必要があります(再試行の場合> 0) またはメイン メソッドを終了します。