廁所和多線程有什麼關係?讀不懂就去上廁所吧。最簡單的多線程理解,小白都可以看

小夥伴們大家好啊,這裏是布丁薩瑪,JAVA多線程也是面試的常客,所以爲了之後的面試,也爲了使自己能夠更好的(zhuang)步(bi)。所以我們一期來看一下什麼是多線程。

因爲自己也是初學者,並且沒有什麼項目實習的經驗,所以寫出來的東西都是自己理解到的東西,但是我們儘量已輕鬆的方式給小夥伴們講出來,如果有什麼不對的地方,歡迎大家在評論區指(si)出(bi),謝謝。

ok,我們開始吧。

在這裏插入圖片描述

在學習之前,我們首先要搞清楚兩個問題。

  • 什麼是多線程?
  • 我們爲什麼要學習多線程?

只有搞清楚這兩個問題之後我們才能夠有目的的去學習。

什麼是線程?

什麼是線程?
在這裏插入圖片描述

按照官方的定義:

  • 是一個程序就是一個進程,而一個程序中的多個任務則被稱爲線程

  • 進程是表示資源分配的基本單位,線程是進程中執行運算的最小單位,亦是調度運行的基本單位。

在這裏插入圖片描述

前方持續高能!!!!

SO?WHAT?

這是啥?
在這裏插入圖片描述

啥玩意?

看不懂啊?
在這裏插入圖片描述

咋能啊?
在這裏插入圖片描述

相信有的小夥伴會和筆者一樣剛看到的時候是懵逼的。

沒錯,說的就是你
在這裏插入圖片描述

OK,沒關係。

在這裏插入圖片描述

今天呢,在我們現場,我們請到了世界著名嘉賓,人類最應該感謝得人,被筆者評爲世界十大最受委屈的人。

在這裏插入圖片描述

那就是 當

廁所先生

在這裏插入圖片描述
鼓掌 👏👏👏👏👏

廁所先生:大家好,我是廁所先生,今天很高興,能來到布丁的節目。我要感謝我的母親

布丁:好了好了,廁所先生不要說了,說正經的。
在這裏插入圖片描述

廁所先生:

  • 這裏呢我們就可以把一個廁所當做一個進程,然後呢。裏面有好多坑,我們就可以把裏面的一個一個坑當做一個線程。而線程就是廁所裏面最小的單位。

所以大家只需要記住
在這裏插入圖片描述

廁所=進程

坑=線程

布丁:正如廁所先生所說,線程就是一個坑。但是呢沒有這個坑又不行。沒有坑那就不是廁所了。

所以程序=屎。所以大家辭職吧。不要寫程序了。
在這裏插入圖片描述
布丁:好了我們說正經的。
在這裏插入圖片描述

假如進程是一間宿舍那麼線程是什麼?

是牀

假如進程是一間餐廳那麼線程又是什麼?

是桌子

假如進程是一個廚房那麼線程是什麼?

是爐竈

Ok,相信經過上面的這些東西的洗禮,我們就可以大致知道線程進程都有一些什麼特點了。
在這裏插入圖片描述

這裏我總結了4點。

  • 1、進程只能有一個,線程可以有n個
  • 2、進程包含線程
  • 3、多個線程可以同時執行
  • 4、多個線程之間不會互相影響
  • 5、進程結束,線程必定結束

關於上面幾點,我們就用我們就請出我們最尊貴的廁所來解釋一下。

鼓掌 👏👏👏👏👏👏
在這裏插入圖片描述

布丁:那麼請問廁所先生,您對於上面幾點有什麼想說的呢?

廁所:幹於以上給點,鵝覺得所的灰常得。
在這裏插入圖片描述

布丁:咳咳,廁所先生,麻煩您先衝下廁所再說話。
在這裏插入圖片描述

廁所先生:嘩啦啦~~,咳咳,關於以上幾點啊,我覺得說的非常對。

  • 一個廁所最少要有一個坑,否則就不是廁所。

  • 同時我的每個坑都可以同時使用。如果一個坑炸了,別的坑也可以使用。

  • 但是如果廁所炸了那麼坑也就不能用了。
    在這裏插入圖片描述

布丁:好的,廁所先生說的非常好。如果還有小夥伴不懂得話,麻煩出門左轉去廁所體驗一下。

在這裏插入圖片描述

OK,我們第一個問題說完了,那麼我們來講第二個問題吧。
在這裏插入圖片描述

我們爲什麼要學習線程?

在這裏插入圖片描述
廁所先生:要說多線程是幹什麼用的,又爲什麼需要多線程呢?那麼就要從拉屎開始說起了。
在這裏插入圖片描述
廁所先生:就比如說我裏面只有一個坑。但是呢,恰逢當前學校做的飯有點問題。一個班的同學都拉肚子了。
在這裏插入圖片描述

  • 如果是單線程的情況那麼一個同學去拉屎了,然後其他同學就只能等着,如果這個同學拉的快還好說,如果不快,那不就尷尬了。是吧。

在這裏插入圖片描述

  • 這裏呢如果我們有了多線程的話,那就會多好多的坑,
    在這裏插入圖片描述
  • 那麼同學們就可以愉快的一起上廁所了,你不影響我,我不影響你。

這就是多線程的好處。我們使用多線程就可以使我們程序效率更高。
在這裏插入圖片描述

布丁:那爲什麼不建個幾百個坑啊,那豈不更快?
在這裏插入圖片描述

廁所先生:我沒意見啊。那到時候整個學校怕不如直接改名叫廁所得了。

在這裏插入圖片描述布丁:我明白了,線程多是會佔用我們的資源的。所以我們要在性能和資源之間找到一個平衡點

廁所先生:沒錯,就是這樣。
在這裏插入圖片描述
布丁:OK,感謝這一期廁所先生的做客,以他自身的經歷給我們講了

  • 什麼是多線程?廁所=線程 坑=進程
  • 我們爲什麼要使用多線程?爲了防止拉屎等很久

那麼本期就到此結束了,我們下一期就來講下如何實現多線程,到時候可能還需要廁所先生來做客。小夥伴們有什麼想說的。可以在評論區告訴我們。謝謝。

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章