日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

2 21技術(shù)日記

 黃家v少 2019-02-21
線程安全的三要素
原子性 可見性 有序性

synchronized和各種鎖可以保證原子性和可見性

volatile可以保證可見性和有序性,也就是防止指令重排


volatile
threadlocal
nio


阻塞和非阻塞
同步和異步

線程同步是有序性,就是sync,就是順序執(zhí)行
同步io也是這個(gè)意思,
異步io,可以做其他事情


并行
并發(fā)

并行,表示兩個(gè)線程同時(shí)做事情。多核才可以


并發(fā),表示一會(huì)做這個(gè)事情,一會(huì)做另一個(gè)事情,存在著調(diào)度。


concurrenthashmap是分段鎖


java阻塞io

你讀取數(shù)據(jù)的時(shí)候,你不能干別的

你寫入數(shù)據(jù)的時(shí)候也不能干別的。


java nio

NIO主要有三大核心部分:Channel(通道),Buffer(緩沖區(qū)), Selector。傳統(tǒng)IO基于字節(jié)流和字符流進(jìn)行操作,而NIO基于Channel和Buffer(緩沖區(qū))進(jìn)行操作,數(shù)據(jù)總是從通道讀取到緩沖區(qū)中,或者從緩沖區(qū)寫入到通道中。Selector(選擇區(qū))用于監(jiān)聽多個(gè)通道的事件(比如:連接打開,數(shù)據(jù)到達(dá))。因此,單個(gè)線程可以監(jiān)聽多個(gè)數(shù)據(jù)通道。



java nio把數(shù)據(jù)寫入緩沖區(qū)就直接完事了,然后監(jiān)聽器監(jiān)聽是否成功即可。。

java nio發(fā)送一個(gè)讀取請(qǐng)求就完事了,然后監(jiān)聽器監(jiān)聽是否成功。。

監(jiān)聽器是不是就是輪詢的實(shí)現(xiàn)。。




    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多