亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

java回調(diào)函數(shù)-異步回調(diào)-簡明講解

Simon_Zhou / 2981人閱讀

摘要:回調(diào)函數(shù)異步回調(diào)簡明講解敘言異步回調(diào)常用于某些業(yè)務(wù)需要很長時間處理,但是又需要立刻返回結(jié)果,這種情況都需要開辟線程獨立處理需要長時間多的業(yè)務(wù),也無處理完了,回調(diào)回調(diào)函數(shù),再去處理與之有關(guān)的需要在該業(yè)務(wù)之后處理的業(yè)務(wù)。

java回調(diào)函數(shù)-異步回調(diào)-簡明講解

敘言:
異步回調(diào)常用于某些業(yè)務(wù)需要很長時間處理,但是又需要立刻返回結(jié)果,這種情況都需要開辟線程獨立處理需要長時間多的業(yè)務(wù),也無處理完了,回調(diào)回調(diào)函數(shù),再去處理與之有關(guān)的需要在該業(yè)務(wù)之后處理的業(yè)務(wù)。
之前看到網(wǎng)上說的回調(diào),雖然有很多說明,但是還是不太好理解,而且比較繁復(fù),個人感覺做的說明并不實用,故而才有了寫這篇文的想法,希望拙見能夠幫助到看此文的你。

1、網(wǎng)上有很多回調(diào)例子,對于同步回調(diào),這里就不細說了,就是在我這個異步回調(diào)的基礎(chǔ)上把線程去掉就行了。
2、網(wǎng)上說回調(diào)函數(shù)的時候,很多都是寫兩個類,一個接口,有些雖然沒有接口,但是還是兩個類,基本上都是使用兩個不同的類來做說明的,其實沒有必要,當我們需要用異步回調(diào)的時候,再去創(chuàng)建一個類,甚至一個接口,還需要實例化對象去調(diào)用方法,這種方式并不太實用。
3、我這里就是在一個類里處理完所有的回調(diào)過程,需要調(diào)用異步的時候,再原來代碼的基礎(chǔ)上添加一個線程調(diào)用需要時間處理的業(yè)務(wù)方法,再寫一個方法(回調(diào)函數(shù)),用于當需要時間處理的那個業(yè)務(wù)處理完之后,去完成之后的業(yè)務(wù)。還需要一個方法,這個方法就是用來處理需要長時間處理的業(yè)務(wù)的。其實就是在主線程的基礎(chǔ)上再開一個線程,相當于在原來代碼的基礎(chǔ)上添加三個方法就能完成異步回調(diào)。
4、下面就是我的代碼,這里用main測試的,所以方法都是static修飾的靜態(tài)方法。

 public class CallBack {
                public static void meNeed() {
                //開啟線程--->點外買
                new Thread(new Runnable() {
                    
                    @Override
                    public void run() {
                        //帶什么外賣
                        String food = "你好,請幫點一份蛋炒飯蓋飯,要辣,不要麻,要放雞精,不放味精,鹽要低鈉鹽,還要多放點蔥花";
                        //下單
                        takeouts(food);
                        
                    }
                }).start();
                
                
                //玩游戲去
                playGames();
            }
        
            /**
             * @throws @Description:點完外賣,我就去玩游戲去了
             */
            public static void playGames() {
                System.err.println("我玩游戲去了");
            }
        
            /**
             * @throws @Description:外賣送到門外,敲門提示我外賣到了,叫我去拿外賣----這個方法就是所謂的--->回調(diào)函數(shù)
             */
            public static void callback(String message) {
                //這里就是需要等待之后才能進行的后續(xù)業(yè)務(wù)邏輯
                System.err.println(message);
            }
        
            /**
             * @throws @Description:
             * @param help
             */
            public static void takeouts(String food) {
                // 模擬帶外賣需要的時間
                for (int i = 0; i < 10000; i++) {
                    for (int j = 0; j < 100; j++) {
                        for (int k = 0; k < 10000; k++) {
                            for (int l = 0; l < 100; l++) {
        
                            }
                        }
                    }
                }
                // 外賣送到了門口,敲門
                String message = "你的外賣到了";
                callback(message);
            }
            
            //測試回調(diào)
            public static void main(String[] args) {
                meNeed();
            }
        }    
        
     


              

 

     

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/69374.html

相關(guān)文章

  • JavaScript簡明教程之瀏覽器,前端程序猿必看

    摘要:瀏覽器對象可以獲取瀏覽器提供的很多對象,并進行操作。對象不但充當全局作用域,而且表示瀏覽器窗口。對象表示當前頁面的信息。由于在瀏覽器中以形式表示為樹形結(jié)構(gòu),對象就是整個樹的根節(jié)點。這個行為由瀏覽器實現(xiàn),主流瀏覽器均支持選項,從開始支持。 由于JavaScript的出現(xiàn)就是為了能在瀏覽器中運行,所以,瀏覽器自然是JavaScript開發(fā)者必須要關(guān)注的?!緦懙谋容^多,難免有疏漏的地方,希望...

    explorer_ddf 評論0 收藏0
  • JavaScript簡明教程之瀏覽器,前端程序猿必看

    摘要:瀏覽器對象可以獲取瀏覽器提供的很多對象,并進行操作。對象不但充當全局作用域,而且表示瀏覽器窗口。對象表示當前頁面的信息。由于在瀏覽器中以形式表示為樹形結(jié)構(gòu),對象就是整個樹的根節(jié)點。這個行為由瀏覽器實現(xiàn),主流瀏覽器均支持選項,從開始支持。 由于JavaScript的出現(xiàn)就是為了能在瀏覽器中運行,所以,瀏覽器自然是JavaScript開發(fā)者必須要關(guān)注的。【寫的比較多,難免有疏漏的地方,希望...

    _ivan 評論0 收藏0
  • Java 8 CompletableFuture 教程

    摘要:在這種方式中,主線程不會被阻塞,不需要一直等到子線程完成。主線程可以并行的執(zhí)行其他任務(wù)。如果我們不想等待結(jié)果返回,我們可以把需要等待完成執(zhí)行的邏輯寫入到回調(diào)函數(shù)中。任何立即執(zhí)行完成那就是執(zhí)行在主線程中嘗試刪除測試下。可以使用達成目的。 Java 8 有大量的新特性和增強如 Lambda 表達式,Streams,CompletableFuture等。在本篇文章中我將詳細解釋清楚Compl...

    since1986 評論0 收藏0
  • 前端基礎(chǔ)

    摘要:談起閉包,它可是兩個核心技術(shù)之一異步基于打造前端持續(xù)集成開發(fā)環(huán)境本文將以一個標準的項目為例,完全拋棄傳統(tǒng)的前端項目開發(fā)部署方式,基于容器技術(shù)打造一個精簡的前端持續(xù)集成的開發(fā)環(huán)境。 這一次,徹底弄懂 JavaScript 執(zhí)行機制 本文的目的就是要保證你徹底弄懂javascript的執(zhí)行機制,如果讀完本文還不懂,可以揍我。 不論你是javascript新手還是老鳥,不論是面試求職,還是日...

    graf 評論0 收藏0
  • 初步講解JS中的callback回調(diào)原理

    摘要:大部分人都知道回調(diào)函數(shù)在中被發(fā)揮的淋漓盡致,然而新手往往很少知道回調(diào)函數(shù)原理,所以接下來我們?nèi)砸赃@個栗子為代表探討回調(diào)函數(shù)。這就是對回調(diào)函數(shù)的簡單講解,萌新程序員,歡迎糾錯 JS的異步執(zhí)行機制 什么是異步執(zhí)行 為了提高Javascript代碼的運行效率,JS對于部分函數(shù)方法采用了異步調(diào)用機制(如Ajax的操作)。異步執(zhí)行的函數(shù)方法的執(zhí)行并非為一個隊列挨個執(zhí)行的,而是相互獨立,同時調(diào)用執(zhí)...

    Simon_Zhou 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<