国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java多線程實現(xiàn)異步調(diào)用的方法

2019-11-26 14:57:44
字體:
供稿:網(wǎng)友

在JAVA平臺,實現(xiàn)異步調(diào)用的角色有如下三個角色:調(diào)用者 提貨單   真實數(shù)據(jù)

一個調(diào)用者在調(diào)用耗時操作,不能立即返回數(shù)據(jù)時,先返回一個提貨單.然后在過一斷時間后憑提貨單來獲取真正的數(shù)據(jù).
去蛋糕店買蛋糕,不需要等蛋糕做出來(假設(shè)現(xiàn)做要很長時間),只需要領(lǐng)個提貨單就可以了(去干別的事情),等到蛋糕做好了,再拿提貨單取蛋糕就可以了。

public class Main {    public static void main(String[] args) {      System.out.println("main BEGIN");      Host host = new Host();      Data data1 = host.request(10, 'A');      Data data2 = host.request(20, 'B');      Data data3 = host.request(30, 'C');      System.out.println("main otherJob BEGIN");      try {        Thread.sleep(200);      } catch (InterruptedException e) {      }      System.out.println("main otherJob END");      System.out.println("data1 = " + data1.getContent());      System.out.println("data2 = " + data2.getContent());      System.out.println("data3 = " + data3.getContent());      System.out.println("main END");    }  } 

 這里的main類就相當(dāng)于“顧客”,host就相當(dāng)于“蛋糕店”,顧客向“蛋糕店”定蛋糕就相當(dāng)于“發(fā)請求request”,返回的數(shù)據(jù)data是FutureData的實例,就相當(dāng)于提貨單,而不是真正的“蛋糕”。在過一段時間后(sleep一段時間后),調(diào)用data1.getContent(),也就是拿提貨單獲取執(zhí)行結(jié)果。

下面來看一下,顧客定蛋糕后,蛋糕店做了什么:

public class Host {    public Data request(final int count, final char c) {      System.out.println("request(" + count + ", " + c + ") BEGIN");      // (1) 建立FutureData的實體      final FutureData future = new FutureData();      // (2) 為了建立RealData的實體,啟動新的線程      new Thread() {                           public void run() {         //在匿名內(nèi)部類中使用count、future、c。                    RealData realdata = new RealData(count, c);          future.setRealData(realdata);        }                             }.start();                           System.out.println("request(" + count + ", " + c + ") END");      // (3) 取回FutureData實體,作為傳回值

主站蜘蛛池模板:
武穴市|
汉川市|
昭通市|
怀柔区|
晋宁县|
奉新县|
潜山县|
溆浦县|
甘孜|
洮南市|
泗阳县|
太谷县|
海伦市|
互助|
丰原市|
庆元县|
奎屯市|
张家界市|
尉氏县|
永济市|
上犹县|
鄂伦春自治旗|
昭觉县|
含山县|
平安县|
瑞昌市|
大方县|
邢台县|
兖州市|
普安县|
中江县|
桐庐县|
四子王旗|
富锦市|
大连市|
贞丰县|
翁牛特旗|
长武县|
盖州市|
陆河县|
鄂尔多斯市|