最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java同步與異步的學(xué)習(xí)筆記整理

 更新時(shí)間:2020年02月18日 14:27:29   作者:青燈夜游  
在本篇文章里小編給大家整理了關(guān)于java同步與異步的學(xué)習(xí)筆記整理內(nèi)容,需要的朋友們參考下。

概念:

1、同步:所有的操作都做完,才返回給用戶。這樣用戶在線等待的時(shí)間太長(zhǎng),給用戶一種卡死了的感覺(就是系統(tǒng)遷移中,點(diǎn)擊了遷移,界面就不動(dòng)了,但是程序還在執(zhí)行,卡死了的感覺)。這種情況下,用戶不能關(guān)閉界面,如果關(guān)閉了,即遷移程序就中斷了。

2、異步:將用戶請(qǐng)求放入消息隊(duì)列,并反饋給用戶,系統(tǒng)遷移程序已經(jīng)啟動(dòng),你可以關(guān)閉瀏覽器了。然后程序再慢慢地去寫入數(shù)據(jù)庫去。這就是異步。但是用戶沒有卡死的感覺,會(huì)告訴你,你的請(qǐng)求系統(tǒng)已經(jīng)響應(yīng)了。你可以關(guān)閉界面了。

同步,是所有的操作都做完,才返回給用戶結(jié)果;即寫完數(shù)據(jù)庫之后,在相應(yīng)用戶,用戶體驗(yàn)不好。

異步,不用等所有操作等做完,就相應(yīng)用戶請(qǐng)求;即先相應(yīng)用戶請(qǐng)求,然后慢慢去寫數(shù)據(jù)庫,用戶體驗(yàn)較好。

同步異步操作例子:

1、同步:

比如銀行的轉(zhuǎn)賬系統(tǒng),對(duì)數(shù)據(jù)庫的保存操作等等都是使用同步交互操作。

2、異步:

為了避免短時(shí)間大量的數(shù)據(jù)庫操作,就使用緩存機(jī)制,也就是消息隊(duì)列。先將數(shù)據(jù)放入消息隊(duì)列,然后再慢慢寫入數(shù)據(jù)庫。

引入消息隊(duì)列機(jī)制,雖然可以保證用戶請(qǐng)求的快速響應(yīng),但是并沒有使得我數(shù)據(jù)遷移的時(shí)間變短(即80萬條數(shù)據(jù)寫入mysql需要1個(gè)小時(shí),用了redis之后,還是需要1個(gè)小時(shí),只是保證用戶的請(qǐng)求的快速響應(yīng)。用戶輸入完http url請(qǐng)求之后,就可以把瀏覽器關(guān)閉了,干別的去了。如果不用redis,瀏覽器不能關(guān)閉)。

知識(shí)點(diǎn)擴(kuò)充:

進(jìn)程同步及異步的概念

1.進(jìn)程同步:

就是在發(fā)出一個(gè)功能調(diào)用時(shí),在沒有得到結(jié)果之前,該調(diào)用就不返回。也就是必須一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃飯,不能在洗涮沒有完成時(shí),就開始吃飯.按照這個(gè)定義,其實(shí)絕大多數(shù)函數(shù)都是同步調(diào)用(例如sin,isdigit等)。但是一般而言,我們?cè)谡f同步、異步的時(shí)候,特指那些需要其他部件協(xié)作或者需要一定時(shí)間完成的任務(wù)。最常見的例子就是

sendmessage。該函數(shù)發(fā)送一個(gè)消息給某個(gè)窗口,在對(duì)方處理完消息之前,這個(gè)函數(shù)不返回。當(dāng)對(duì)方處理完畢以后,該函數(shù)才把消息處理函數(shù)所返回的lresult值返回給調(diào)用者。

2.異步

異步的概念和同步相對(duì)。當(dāng)一個(gè)異步過程調(diào)用發(fā)出后,調(diào)用者不能立刻得到結(jié)果。實(shí)際處理這個(gè)調(diào)用的部件在完成后,通過狀態(tài)、通知和回調(diào)來通知調(diào)用者。

以casycsocket類為例(注意,csocket從casyncsocket派生,但是其功能已經(jīng)由異步轉(zhuǎn)化為同步),當(dāng)一個(gè)客戶端通過調(diào)用connect函數(shù)發(fā)出一個(gè)連接請(qǐng)求后,調(diào)用者線程立刻可以朝下運(yùn)行。當(dāng)連接真正建立起來以后,socket底層會(huì)發(fā)送一個(gè)消息通知該對(duì)象。

以上就是java同步與異步的區(qū)別是什么的相關(guān)內(nèi)容,感謝大家的學(xué)習(xí)和對(duì)腳本之家的支持。

相關(guān)文章

  • Java Spring集成MapStruct詳情

    Java Spring集成MapStruct詳情

    這篇文章主要介紹了Java Spring集成MapStruct詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-06-06
  • Java高級(jí)特性之反射機(jī)制實(shí)例詳解

    Java高級(jí)特性之反射機(jī)制實(shí)例詳解

    這篇文章主要介紹了Java高級(jí)特性之反射機(jī)制,結(jié)合實(shí)例形式詳細(xì)分析了Java反射機(jī)制原理、功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2018-08-08
  • 如何使用JAVA實(shí)現(xiàn)數(shù)字水印

    如何使用JAVA實(shí)現(xiàn)數(shù)字水印

    本文介紹了如何使用JAVA實(shí)現(xiàn)數(shù)字水印,主要用到了java.awt包中的AlphaComposite類,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2015-07-07
  • SpringBoot使用榛子云實(shí)現(xiàn)手機(jī)短信發(fā)送驗(yàn)證碼

    SpringBoot使用榛子云實(shí)現(xiàn)手機(jī)短信發(fā)送驗(yàn)證碼

    發(fā)送驗(yàn)證碼主要用于驗(yàn)證用戶手機(jī)的合法性及敏感操作的身份驗(yàn)證,本文使用了SpringBoot實(shí)現(xiàn),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • 快速解決List集合add元素,添加多個(gè)對(duì)象出現(xiàn)重復(fù)的問題

    快速解決List集合add元素,添加多個(gè)對(duì)象出現(xiàn)重復(fù)的問題

    這篇文章主要介紹了快速解決List集合add元素,添加多個(gè)對(duì)象出現(xiàn)重復(fù)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • 解決mybatis 數(shù)據(jù)庫date 與 java中Date類型映射問題

    解決mybatis 數(shù)據(jù)庫date 與 java中Date類型映射問題

    這篇文章主要介紹了解決mybatis 數(shù)據(jù)庫date 與 java中Date類型映射問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來吧
    2020-11-11
  • SpringBoot+MyBatis集成支付寶支付流程

    SpringBoot+MyBatis集成支付寶支付流程

    本文主要介紹了SpringBoot+MyBatis集成支付寶支付流程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-06-06
  • java網(wǎng)上圖書商城(8)訂單模塊3

    java網(wǎng)上圖書商城(8)訂單模塊3

    這篇文章主要為大家詳細(xì)介紹了java網(wǎng)上圖書商城,訂單模塊第三篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 淺談Java中ArrayList的擴(kuò)容機(jī)制

    淺談Java中ArrayList的擴(kuò)容機(jī)制

    本文主要介紹了淺談Java中ArrayList的擴(kuò)容機(jī)制,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 一文讀懂Java多線程背后的故事

    一文讀懂Java多線程背后的故事

    Java是一種廣泛使用的編程語言,而多線程是Java程序員必不可少的一部分,Java的多線程支持具有確保數(shù)據(jù)同步、最大化利用CPU資源、并行處理任務(wù)等眾多優(yōu)點(diǎn),本文從實(shí)際應(yīng)用場(chǎng)景出發(fā),為您詳細(xì)介紹 Java 多線程的各個(gè)方面的實(shí)際應(yīng)用及背景
    2023-06-06

最新評(píng)論

九龙城区| 龙川县| 株洲县| 盘锦市| 沂水县| 刚察县| 界首市| 江永县| 石楼县| 固镇县| 清远市| 大田县| 霞浦县| 育儿| 崇明县| 信阳市| 黄梅县| 清远市| 崇仁县| 巴彦县| 苗栗市| 海原县| 罗甸县| 娄底市| 高阳县| 旬阳县| 本溪| 苗栗市| 万宁市| 三门县| 绥中县| 元谋县| 合山市| 龙江县| 定陶县| 荣昌县| 敦化市| 蓝田县| 寿光市| 陕西省| 文水县|