問題タブ [callable]
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.
python - 「callable」とは何ですか?
メタクラスが何であるかが明確になったので、実際の意味を知らずに常に使用している関連概念があります。
誰もが一度は括弧を間違えて、「オブジェクトは呼び出し可能ではありません」という例外が発生したと思います。さらに、この血まみれが何に使われるのか疑問に思うように使用__init__
してください。__new__
__call__
マジックメソッドの例を含めて、いくつか説明していただけますか?
java - Java の Runnable インターフェースと Callable インターフェースの違い
Runnable
Java で並行スレッドを設計する際にとCallable
インターフェースを使用することの違いは何ですか?
java - 指定されたタイムアウトを超えた場合に実行を強制終了できるように、メソッドをラップするにはどうすればよいですか?
呼び出したいメソッドがあります。ただし、実行に時間がかかりすぎる場合は、それを強制終了するか、強制的に戻すためのクリーンで簡単な方法を探しています。
私はJavaを使用しています。
説明する:
TestExecutor
クラスはimplement Callable
その方向に進むべきだと思います。
しかし、私ができることは、executor.execute()
時間がかかりすぎる場合は停止することだけです.
提案...?
編集
寄せられた提案の多くは、実行中のメソッドに時間がかかり、何らかのループが含まれており、変数が定期的にチェックされる可能性があることを前提としています。しかし、そうではありません。したがって、必ずしもクリーンであるとは限らず、どこにいても実行を停止するだけのものは許容されます。
java - Callable にどのくらいのロジックを入れるのが「正しい」のでしょうか?
私はかなり頻繁に callable を使用していますが、私を苛立たせる質問に出くわしました:
関数 foo() を実行するには、最初にいくつかのチェックを行う必要があるとしましょう。
1. チェックを Callable の一部として挿入します。
- または、このすべてのロジックを別のクラス (ALogic) に挿入し、Callable をエグゼキュータの単なるシェルとして使用しますか?
class A implements Callable {
...
public Long call() {
ALogic aLogic = new ALogic();
return (aLogic.run());
}
長所と短所は何だと思いますか?あなたは通常、何を好みますか?
java - 将来のキャンセル時にCallable内でCXFWebサービス呼び出しを終了する方法
編集
この質問はこれまでに数回繰り返されてきたので、改訂を自由に調べて、歴史や試みられた事柄に関する背景情報を確認してください。
CompletionServiceをExecutorServiceおよびCallableと一緒に使用して、CXFで生成されたコードを介していくつかの異なるWebサービス上の多数の関数を同時に呼び出しています。これらのサービスはすべて、使用している単一の情報セットに対して異なる情報を提供します。私のプロジェクト。ただし、サービスは例外をスローせずに長期間応答できない可能性があり、情報の組み合わせセットの待機が長くなります。
これに対抗するために、私はすべてのサービスコールを同時に実行しています。数分後、まだ終了していないコールをすべて終了し、できれば、呼び出し可能ファイル内から、またはスローすることによって、まだ実行されていないコールをログに記録します。詳細な例外。
これは、私がすでに行っていることを説明するための非常に単純化されたコードです。
また、WS呼び出しを同時に開始するコードは次のとおりです。
このコードで私が抱えている問題は、port.getXXXFeatures(...)が戻るのを待っているときに、Callablesが実際にはキャンセルされないが、どういうわけか実行を続けることです。ステートメントからわかるように、port.getFeaturesが戻った後if (Thread.currentThread().isInterrupted()) log.error("XXX was interrupted");
に中断フラグが設定されます。これは、キャンセルを呼び出したときに中断されたのではなく、Webサービス呼び出しが正常に完了した後にのみ使用できます。
誰かが私が間違っていることと、一定期間後に実行中のCXF Webサービス呼び出しを停止し、この情報をアプリケーションに登録する方法を教えてもらえますか?
よろしく、ティム
groovy - Groovyに呼び出し可能なオブジェクトを作成する方法はありますか?
たとえば、Aという名前のクラスがある場合、Pythonと同じように、オブジェクトを呼び出し可能にすることはできますか?例えば :
そしてそれはいくつかのオブジェクトメソッドを呼び出すでしょう。できますか?
php - オブジェクトメンバーとしてのPHP呼び出し可能オブジェクト
Logger
とりわけメソッドを持つクラスがありLog
ます。インスタンスの最も一般的な使用法として
、私は電話するように配線しましたLog
Logger
__invoke
Log
別のクラス「Site」には、Loggerのインスタンスであるメンバー「Log」が含まれています。
なぜこれが機能するのでしょうか。
しかし、これではありません:
前者は「PHP致命的エラー:未定義のメソッドSite :: Log()の呼び出し」で失敗します
これは呼び出し可能なオブジェクトの実装の制限ですか、それとも私は何かを誤解していますか?