-1

コードの例

スレッドで 1 つの Web サービスを呼び出し、そのスレッドを実行するための時間制限を設定する必要があり、t.start() のように成功した ID と失敗した ID の値を返す必要があります。および t.stop(); 時間内に

4

2 に答える 2

2
Future<T> result = Executors.newSingleThreadScheduledExecutor().submit(
    new Callable<T>() {
        @Override
        public void run() {
            //perform action here
            while(!Thread.interrupted()){
                //do next stage of calculation
            }
        }
    });
T value = result.get(10, TimeUnit.SECONDS); //for example wait 10 seconds
if(value == null) {
    //process is not finished
    result.cancel(true);    //interrupt task
}
于 2013-01-22T14:56:17.063 に答える
1

Web サービス呼び出しはアトミック操作であり、そうするように設計されていない限り、部分的な結果は返されません。たとえば、リクエストを受け取って処理を開始する Web サービスと、2 番目のサービス コールが操作を中断し、部分的な結果を要求する場合などです。

于 2013-01-22T14:57:45.063 に答える