原创 Java併發包源碼學習系列:掛起與喚醒線程LockSupport工具類

目錄LockSupport概述park與unpark相關方法中斷演示blocker的作用測試無blocker測試帶blockerJDK提供的demo總結參考閱讀 系列傳送門: Java併發包源碼學習系列:AbstractQueuedSyn

原创 Java併發包源碼學習系列:ReentrantReadWriteLock讀寫鎖解析

目錄ReadWriteLock讀寫鎖概述讀寫鎖案例ReentrantReadWriteLock架構總覽Sync重要字段及內部類表示寫鎖的獲取void lock()boolean writerShouldBlock()void lockInt

原创 Java併發包源碼學習系列:ReentrantLock可重入獨佔鎖詳解

目錄基本用法介紹繼承體系構造方法state狀態表示獲取鎖void lock()方法NonfairSyncFairSync公平與非公平策略的差異void lockInterruptibly()boolean tryLock()方法boolea

原创 Java併發包源碼學習系列:AQS共享式與獨佔式獲取與釋放資源的區別

目錄Java併發包源碼學習系列:AQS共享模式獲取與釋放資源獨佔式獲取資源void acquire(int arg)boolean acquireQueued(Node, int)獨佔式釋放資源boolean release(int arg

原创 Java併發包源碼學習系列:CLH同步隊列及同步資源獲取與釋放

目錄本篇學習目標CLH隊列的結構資源獲取入隊Node addWaiter(Node mode)不斷嘗試Node enq(final Node node)boolean acquireQueued(Node, int)出隊void setHe

原创 Java併發包源碼學習系列:AbstractQueuedSynchronizer

目錄本篇學習目標AQS概述AbstractOwnableSynchronizer同步隊列與Node節點同步狀態state重要方法分析獨佔式獲取與釋放同步狀態共享式獲取與釋放同步狀態AQS條件變量的支持Condition接口Condition

原创 Java8的Optional:如何幹掉空指針?

目錄Optional概述Optional簡單案例Optional的主要方法參考閱讀 Optional概述 Optional 是個容器:它可以保存類型T的value,或者僅僅保存null。Optional提供很多有用的方法,這樣我們就不用顯式

原创 聊一聊NIO的三大組件:Buffer、Channel和Selector

目錄NIO是啥?BufferBuffer中的重要概念Buffer使用Demo常用方法介紹ChannelChannel概述RandomAccessFile#getChannelSocketChannel與ServerSocketChannel

原创 NIO、BIO、AIO、同步異步、阻塞非阻塞傻傻分不清楚?

目錄阻塞與非阻塞阻塞IO非阻塞IO同步與異步同步IO異步IONIO與BIO的區別總結BIONIOAIO是啥?總結參考閱讀 以下內容摘自:敖丙肝了一個月的Netty知識點 阻塞與非阻塞 阻塞和非阻塞操作是針對發起的IO請求操作後是否立刻返

原创 Java:利用BigDecimal類巧妙處理Double類型精度丟失

目錄本篇要點經典問題:浮點數精度丟失十進制整數如何轉化爲二進制整數?十進制小數如何轉化爲二進制數?如何用BigDecimal解決double精度問題?new BigDecimal(double val)new BigDecimal(Stri

原创 任務調度框架Quartz快速入門!

目錄Quartz是什麼Quartz中的重要API及概念超重要API重要概念Quartz設計理念:爲什麼設計Job和Trigger?最簡單的Quartz使用案例Job實例和JobDetailJob的State和Concurrency@Disa

原创 SpringBoot整合任務調度框架Quartz及持久化配置

目錄本篇要點SpringBoot與Quartz單機版快速整合引入依賴創建Job調度器Scheduler綁定自動配置,這裏演示SimpleScheduleBuilder手動配置,這裏演示CronScheduleBuilderyml配置主啓動類

原创 Kafka超詳細學習筆記【概念理解,安裝配置】

目錄本篇要點Kafka介紹作爲流處理平臺的三種特性主要應用四個核心API基本術語快速開始安裝配置Zookeeper下載kafka配置文件Windows的命令啓動Zookeeper啓動Kafka進行測試創建topic查看topic生產者消費者

原创 談談使用Iterator操作集合的時候踩的幾個坑

目錄ConcurrentModificationExceptionUnsupportedOperationException移除指定數值 ConcurrentModificationException 網上關於集合類型使用Iterator遍

原创 詳解Java中的IO輸入輸出流!

目錄本片要點基本分類發展史文件字符流輸出的基本結構流中的異常處理異常處理新方式讀取的基本結構運用輸入與輸出完成複製效果文件字節流緩衝流字符緩衝流裝飾設計模式轉換流(適配器)適配器設計模式標準流/系統流標準流分類打印流合併流序列化/反序列化流