iT邦幫忙

鐵人檔案

2019 iT 邦幫忙鐵人賽
回列表
Software Development

30 天介紹 Java 的 Thread 系列

在看一些有關於分散式運算或是分散式儲存的 open source 時常常都會在 source code 裡面看到有開 Multi Thread 的部份,有時有可能會看不懂程式的寫法或是語法的意義。因此想利用這 30 天內的時間去學習有關於 Java Thread 的部份以及介紹寫 Java Thread 的一些 Pattern。期望未來無論是開發程式或是看 Open Source 的程式時都能很快的了解程式寫法的目的。

鐵人鍊成 | 共 30 篇文章 | 64 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11 介紹 LinkedBlockingQueue 類別 (二)

延續昨天介紹 LinkedBlockingQueue class 的部份,今天要介紹如何把 LinkedBlockingQueue 的資料取出來以及檢查元素的值...

2018-10-25 ‧ 由 yangj26952 分享
DAY 12

Day12 使用 Exchanger Class 來交換 Thread 之間的資料

今天要來介紹如何使用 Java 提供內建的 Exchanger class 來交換 Thread 之間的資料。以下先來寫個簡單的 Sample Code 來 D...

2018-10-26 ‧ 由 yangj26952 分享
DAY 13

Day 13 使用 Exchanger 寫 Producer Consumer 程式

延續昨天介紹 Exchanger 的部份,Exchanger 玊要可以將二個 Thread 的資料做交換。在寫Producer Consumer 程式的使用情境...

2018-10-27 ‧ 由 yangj26952 分享
DAY 14

Day 14 介紹 ReentrantLock (一)

今天要介紹 java.util.concurrent.locks package 下面 ReentrantLock 的類別,它是屬於 Lock 的一種實作,其實...

2018-10-28 ‧ 由 yangj26952 分享
DAY 15

Day 15 介紹 ReentrantLock (二)

延續昨天介紹 ReentrantLock 的部份,今天要介紹如何使用 ReentrantLock 所提供的 newCondition() 方法。newCond...

2018-10-29 ‧ 由 yangj26952 分享
DAY 16

Day16 介紹 FutureTask 類別

之前的幾天在寫執行緒程式都是使用實作 Runnable 的方式,然後在主程式裡面呼叫 Thread start 的方式,使用這種做法會有一個缺點,就是當我們想要...

2018-10-30 ‧ 由 yangj26952 分享
DAY 17

Day 17 使用 ThreadFactory 建立執行緒

在看 Design Pattern 時,有一種模式叫做工廠模式也就是 Factory Pattern,它主要的好處是在 new 一個物件時可以統一的去管理物件,...

2018-10-31 ‧ 由 yangj26952 分享
DAY 18

Day 18 使用 Executors 和 ExecutorService 啟動執行緒 (一)

之前幾天在啟動執行緒的方式都是直接 new Thread() 之後再去呼叫 start 方法,使用這種方法啟動執行緒較沒有彈性而且管理上也比較不方便。Java...

2018-11-01 ‧ 由 yangj26952 分享
DAY 19

Day 19 使用 Executors 和 ExecutorService 啟動執行緒 (二)

延續昨天介紹 Executors 的部份,今天會使用 newFixThreadPool、newSingleThreadExecutor 的方法撰寫 Sample...

2018-11-02 ‧ 由 yangj26952 分享
DAY 20

Day 20 使用 Executors 和 ExecutorService 啟動執行緒 (三)

今天要介紹 newScheduledThreadPool 和 newSingleThreadScheduledExecutor 這二個屬於於執行緒排程,定期會執...

2018-11-03 ‧ 由 yangj26952 分享