前言

最近特別忙,博客就此荒蕪,博主秉著哪里不熟悉就開(kāi)始學(xué)習(xí)哪里的精神一直在分享著,有著扎實(shí)的基礎(chǔ)才能寫(xiě)出健壯的代碼,有可能實(shí)現(xiàn)的邏輯有多種,但是心中必須有要有底哪個(gè)更適合,用著更好,否則則說(shuō)明我們對(duì)這方面還比較薄弱,這個(gè)時(shí)候就得好好補(bǔ)補(bǔ)了,這樣才能加快提升自身能力的步伐,接下來(lái)的時(shí)間會(huì)著重講解線程方面的知識(shí)。強(qiáng)勢(shì)分割線。

 


 

話題亂入,一到跳槽季節(jié)想必我們很多人就開(kāi)始刷面試題,這種情況下大部分都能解決問(wèn)題,但是這樣的結(jié)果則是導(dǎo)致有可能企業(yè)招到并非合適的人,當(dāng)然作為面試官的那些人們也懶得再去自己出一份面試題,問(wèn)來(lái)問(wèn)去就那些技術(shù)【排除有些裝逼的面試官】,如果我作為面試官我會(huì)在網(wǎng)上挑出50%的面試題,其他面試則是現(xiàn)場(chǎng)問(wèn)答,看看面試者的實(shí)際能力和平時(shí)的積累是怎樣的。好了,現(xiàn)在隨便出三道面試題,作為面試者的你,看你如何作答:

(1)利用Thread類創(chuàng)建線程有幾種方式。

(2)如果你已工作3年,我要問(wèn)你創(chuàng)建線程的至少3種方式,如果你已工作6年,我會(huì)問(wèn)你創(chuàng)建線程的7種方式。

(3)線程的發(fā)展歷程是怎樣的,每一個(gè)歷程分別是為了解決什么問(wèn)題。

如果你需要沉思一會(huì)或者回答不出來(lái),那你就有必要好好補(bǔ)補(bǔ)線程這方面的知識(shí)了!如果答案已有請(qǐng)對(duì)照文章最底部參考答案是否大概一致。

線程

線程確實(shí)很強(qiáng)大,強(qiáng)大到對(duì)于我而言只知道這個(gè)概念,由于自身的能力無(wú)法從底層去追究,只能通過(guò)網(wǎng)上資料或書(shū)籍來(lái)強(qiáng)勢(shì)入腦,但是利用線程不當(dāng)則導(dǎo)致各種各樣問(wèn)題的出現(xiàn),若不作為開(kāi)發(fā)者我們只能重啟電腦或者打開(kāi)任務(wù)管理器去直接關(guān)閉該死的那所屬的進(jìn)程,作為開(kāi)發(fā)者的我們知道線程有著內(nèi)存占用和運(yùn)行時(shí)的性能開(kāi)銷即創(chuàng)建和銷毀都是需要開(kāi)銷。每個(gè)線程都有以下因素

(1)線程內(nèi)核對(duì)象。

(2)線程環(huán)境塊。

(3)用戶模式棧。

(4)內(nèi)核模式棧。

(5)DLL線程連接和線程分離通知。

上述摘抄來(lái)自CLR Via  C#,請(qǐng)?jiān)徫覒械萌タ催@段文字也不想看,沒(méi)多大意思【因?yàn)槲也欢?,比較底層的東西我就不去過(guò)多探討了。好了,開(kāi)始進(jìn)入我們最原始的線程創(chuàng)建講解。

網(wǎng)友評(píng)論