在開始之前,先給大家做一些知識點(diǎn)的普及,理解后面一些可能用到的知識點(diǎn)概念
1、流(Stream)
計算機(jī)中的流其實是一種信息的轉(zhuǎn)換。于某一對象,通常把對象接收外界的信息輸入稱為輸入流,把對象向外輸出信息為輸出流,合稱為輸入/輸出流(I/O Stream)。
對象間進(jìn)行數(shù)據(jù)交換時總是先將數(shù)據(jù)轉(zhuǎn)換為某種形式的流,再通過流的傳輸,到達(dá)目的對象后再將流轉(zhuǎn)換為對象數(shù)據(jù)。所以,可以把流看作是一種數(shù)據(jù)的載體,通過它可以實現(xiàn)數(shù)據(jù)交換和傳輸。
2、連接(Connection)
3、阻塞(Block)、非阻塞(Non-block)
阻塞調(diào)用是指調(diào)用結(jié)果返回(或者收到通知)之前,當(dāng)前線程會被掛起,即不繼續(xù)執(zhí)行后續(xù)操作;
非阻塞調(diào)用指在不能立刻得到結(jié)果之前,該調(diào)用不會阻塞當(dāng)前線程。
4、同步(Synchronous)、異步(asynchronous)
所謂同步,就是在發(fā)出一個功能調(diào)用時,在沒有得到結(jié)果之前,該調(diào)用就不返回,同時其它線程也不能調(diào)用這個方法。
異步呢,就是發(fā)出一個功能調(diào)用后,不管沒有結(jié)果的返回,都不影響當(dāng)前任務(wù)的繼續(xù)執(zhí)行。即兩個生產(chǎn)線相互獨(dú)立。
以上兩個問題,阻塞非阻塞和同步異步,其實非常相似,但主要區(qū)別在于角度不同,同步異步,是對于被調(diào)用者而言的;而阻塞非阻塞,則是對調(diào)用者而言的。
5、 IP地址 (IP Address) 四段0~255之間的十進(jìn)制數(shù)字,如常見的內(nèi)網(wǎng)地址192.168.0.1或某公網(wǎng)地址114.55.92.xxx
6、字節(jié)順序(Bytes Order)
字節(jié)順序是指占內(nèi)存多于一個字節(jié)類型的數(shù)據(jù)在內(nèi)存中的存放順序,通常有小端、大端兩種字節(jié)順序。
7、帶外數(shù)據(jù)(Outband Data)
帶外數(shù)據(jù),也稱為TCP緊急數(shù)據(jù),是相連的每一對流套接口間一個邏輯上獨(dú)立的傳輸通道。帶外數(shù)據(jù)是獨(dú)立于普通數(shù)據(jù)傳送給用戶的。
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程