前言

在Java中,線(xiàn)程是一個(gè)很關(guān)鍵的名詞,也是很高頻使用的一種資源。那么它的概念是什么呢,是如何定義的,用法又有哪些呢?為何說(shuō)Android里只有一個(gè)主線(xiàn)程呢,什么是工作線(xiàn)程呢。線(xiàn)程又存在并發(fā),并發(fā)機(jī)制的原理是什么。這些內(nèi)容有些了解,有些又不是很清楚,所以有必要通過(guò)一篇文章的梳理,弄清其中的來(lái)龍去脈,為了之后的開(kāi)發(fā)過(guò)程中提供更好的支持。

目錄

  • 線(xiàn)程定義

  • Java線(xiàn)程生命周期

  • 線(xiàn)程用法

  • Android中的線(xiàn)程

  • 工作線(xiàn)程

  • 使用AsyncTask

  • 什么是并發(fā)

  • 并發(fā)機(jī)制原理

  • 并發(fā)具體怎么用

線(xiàn)程定義

說(shuō)到線(xiàn)程,就離不開(kāi)談到進(jìn)程了,比如在A(yíng)ndroid中,一個(gè)應(yīng)用程序基本有一個(gè)進(jìn)程,但是一個(gè)進(jìn)程可以有多個(gè)線(xiàn)程組成。在應(yīng)用程序中,線(xiàn)程和進(jìn)程是兩個(gè)基本執(zhí)行單元,都是可以處理比較復(fù)雜的操作,比如網(wǎng)絡(luò)請(qǐng)求、I/O讀寫(xiě)等等,在Java中我們大部分操作的是線(xiàn)程(Thread),當(dāng)然進(jìn)程也是很重要的。

進(jìn)程通常有獨(dú)立執(zhí)行環(huán)境,有完整的可設(shè)置為私有基本運(yùn)行資源,比如,每個(gè)進(jìn)程會(huì)有自己的內(nèi)存空間。而線(xiàn)程呢,去官網(wǎng)的查了下,原話(huà)如下:

Threads are sometimes called "lightweight processes". Both processes and threads provide an execution environment, but creating a new thread requires fewer resources than creating a new process.

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式