欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JAVA實現(xiàn)異步調(diào)用實例代碼

 更新時間:2015年09月28日 14:41:01   作者:風在那里追  
在java平臺,實現(xiàn)異步調(diào)用的角色主要三種角色:調(diào)用者、取貨憑證、真實數(shù)據(jù)。本篇文章給大家介紹java實現(xiàn)異步調(diào)用實例代碼,需要的朋友可以參考下

在JAVA平臺,實現(xiàn)異步調(diào)用的角色有如下三個角色:

調(diào)用者 取貨憑證   真實數(shù)據(jù)

一個調(diào)用者在調(diào)用耗時操作,不能立即返回數(shù)據(jù)時,先返回一個取貨憑證.然后在過一斷時間后憑取貨憑證來獲取真正的數(shù)據(jù).

在調(diào)用一個方法的時候,程序會進入被調(diào)用方法體內(nèi),執(zhí)行完這個被調(diào)用方法后,才返回執(zhí)行下一條語句。怎么做到像ajax異步請求一樣,發(fā)送請求后,沒等請求響應(yīng)就執(zhí)行下一條語句呢?對于java的異步請求,找了許多教材都沒有找到,如thinking in java、core java2 ......等等。受多線程下載工具以及mootools的Request的啟發(fā),做了一個java版的Request,不知它的性能如何。

Request:請求載體

public class Request {
 private RequestContent rc;//請求主體
 public Request(RequestContent rc){
 this.rc=rc;
 }
 protected void start(){ //開始請求
 final Thread t=new Thread(new Runnable(){
  public void run(){
  try{
   rc.doSomeThing();//響應(yīng)請求
  }catch (Exception e) {
   e.printStackTrace();
   rc.onFailure(); //如果執(zhí)行失敗
  }
  rc.onSuccess();//如果執(zhí)行成功
  }}
 );
 t.start();
 }
}

RequestContent:請求主體

abstract class RequestContent {
 void onSuccess(){  //執(zhí)行成功的動作。用戶可以覆蓋此方法
 System.out.println("onSuccess");
 }
 void onFailure(){ //執(zhí)行失敗的動作。用戶可以覆蓋此方法
 System.out.println("onFailure");
 }
 abstract void doSomeThing(); //用戶必須實現(xiàn)這個抽象方法,告訴子線程要做什么
}

Test:測試

 new Request(new RequestContent(){
  void doSomeThing(){
  System.out.println("doSomething");
  }
  void onSuccess(){
  System.out.println("override onSuccess");
  }
 }).start();

以上代碼就是小編給大家分享的java實現(xiàn)異步調(diào)用,希望大家喜歡。

相關(guān)文章

  • 全面解析Java中的引用類型

    全面解析Java中的引用類型

    在Java中對象以引用來指向JVM的內(nèi)存區(qū)塊,這里我們總結(jié)了強引用、軟引用、弱引用和假象引用(幽靈引用),下面就具體來全面解析Java中的引用類型:
    2016-05-05
  • Java for-each循環(huán)使用難題2例(高級使用方法)

    Java for-each循環(huán)使用難題2例(高級使用方法)

    從Java5起,在Java中有了for-each循環(huán),可以用來循環(huán)遍歷collection和array。For each循環(huán)允許你在無需保持傳統(tǒng)for循環(huán)中的索引,或在使用iterator /ListIterator時無需調(diào)用while循環(huán)中的hasNext()方法就能遍歷collection
    2014-04-04
  • 詳解Java實踐之適配器模式

    詳解Java實踐之適配器模式

    在計算機編程中,適配器模式(有時候也稱包裝樣式或者包裝)將一個類的接口適配成用戶所期待的。一個適配允許通常因為接口不兼容而不能在一起工作的類工作在一起,做法是將類自己的接口包裹在一個已存在的類中
    2021-06-06
  • 淺談spring 常用注解

    淺談spring 常用注解

    這篇文章主要介紹了淺談spring 常用注解,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Java繼承的實現(xiàn)與繼承限制分析

    Java繼承的實現(xiàn)與繼承限制分析

    這篇文章主要介紹了Java繼承的實現(xiàn)與繼承限制,結(jié)合具體實例形式分析了Java繼承的定義、實現(xiàn)以及繼承的相關(guān)限制,需要的朋友可以參考下
    2019-01-01
  • SpringBoot-RestTemplate如何實現(xiàn)調(diào)用第三方API

    SpringBoot-RestTemplate如何實現(xiàn)調(diào)用第三方API

    這篇文章主要介紹了SpringBoot-RestTemplate實現(xiàn)調(diào)用第三方API的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • springboot+maven多環(huán)境動態(tài)配置及編譯失敗的解決方案(步驟詳解)

    springboot+maven多環(huán)境動態(tài)配置及編譯失敗的解決方案(步驟詳解)

    這篇文章主要介紹了springboot+maven多環(huán)境動態(tài)配置及編譯失敗的解決方案,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • Java靜態(tài)代碼塊作用及執(zhí)行順序解析

    Java靜態(tài)代碼塊作用及執(zhí)行順序解析

    這篇文章主要介紹了Java靜態(tài)代碼塊作用及執(zhí)行順序解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-04-04
  • IntelliJ Idea常用11款插件(提高開發(fā)效率)

    IntelliJ Idea常用11款插件(提高開發(fā)效率)

    這篇文章主要介紹了IntelliJ Idea常用11款插件(提高開發(fā)效率),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-07-07
  • 詳解Java中的ForkJoin

    詳解Java中的ForkJoin

    Fork/Join框架是Java 7提供的一種用于并行執(zhí)行任務(wù)的框架,它將大任務(wù)分解為若干個小任務(wù),并行執(zhí)行這些小任務(wù),最終通過合并每個小任務(wù)的結(jié)果得到大任務(wù)的結(jié)果,文中有詳細的代碼示例,需要的朋友可以參考下
    2023-05-05

最新評論