付費(fèi)下載
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
多線程CG為什么要用多線程讓計算機(jī)"同時"做多件事情,節(jié)約時間。多線程可以讓一個程序“同時”處理多個事情。后臺運(yùn)行程序,提高程序的運(yùn)行效率,也不會使主界面出現(xiàn)無響應(yīng)的情況。獲得當(dāng)前線程和當(dāng)前進(jìn)程Demo1:單線程帶來的問題.net中如何實現(xiàn)多線程2(線程同步)產(chǎn)生一個線程的4步驟:編寫產(chǎn)生線程所要執(zhí)行的方法引用System.Threading命名空間實例化Thread類,并傳入一個指向線程所要運(yùn)行方法的委托。(這時候這個線程已經(jīng)產(chǎn)生,但是還沒有運(yùn)行)調(diào)用Thread實例的Start方法,標(biāo)記該線程可以被CPU執(zhí)行了,但具體執(zhí)行時間由CPU決定。Demo2:兩個線程同時運(yùn)行前臺線程和后臺線程前臺線程:只有所有的前臺線程都關(guān)閉才能完成程序關(guān)閉。后臺線程:只要所有的前臺線程結(jié)束,后臺線程自動結(jié)束。Thread類的一些重要成員(*)Start()啟動線程(告訴CPU我可以被執(zhí)行了,具體什么時候執(zhí)行,由CPU決定)Abort()終止線程終止完成之后不能再Start()Thread.Sleep(1)靜態(tài)方法,可以使當(dāng)前線程停止一段時間運(yùn)行Name線程名Thread.CurrentThread獲得當(dāng)前的線程引用補(bǔ)充和練習(xí)Demo3:線程中如何訪問控件Demo4:執(zhí)行帶參數(shù)的方法SOCKET網(wǎng)絡(luò)編程兩個人在兩個房子里打電話的圖人通過【電話】可以通信程序通過【Socket】來通信。*套接字就是程序間的電話機(jī)。我和XX然打電話電話規(guī)定好的語言電腦和電腦進(jìn)行聯(lián)系SocketHTTP協(xié)議Socket相關(guān)概念socket的英文原義是“孔”或“插座”。作為進(jìn)程通信機(jī)制,取后一種意思。通常也稱作“套接字”,用于描述IP地址和端口,是一個通信鏈的句柄。(其實就是兩個程序通信用的。)socket非常類似于電話插座。以一個電話網(wǎng)為例。電話的通話雙方相當(dāng)于相互通信的2個程序,電話號碼就是IP地址。任何用戶在通話之前,首先要占有一部電話機(jī),相當(dāng)于申請一個socket;同時要知道對方的號碼,相當(dāng)于對方有一個固定的socket。然后向?qū)Ψ綋芴柡艚?,相?dāng)于發(fā)出連接請求。對方假如在場并空閑,拿起電話話筒,雙方就可以正式通話,相當(dāng)于連接成功。雙方通話的過程,是一方向電話機(jī)發(fā)出信號和對方從電話機(jī)接收信號的過程,相當(dāng)于向socket發(fā)送數(shù)據(jù)和從socket接收數(shù)據(jù)。通話結(jié)束后,一方掛起電話機(jī)相當(dāng)于關(guān)閉socket,撤消連接。Socket相關(guān)概念[端口]在Internet上有很多這樣的主機(jī),這些主機(jī)一般運(yùn)行了多個服務(wù)軟件,同時提供幾種服務(wù)。每種服務(wù)都打開一個Socket,并綁定到一個端口上,不同的端口對應(yīng)于不同的服務(wù)(應(yīng)用程序)。例如:http使用80端口ftp使用21端口smtp25端口有兩種類型:50000流式Socket(STREAM):
是一種面向連接的Socket,針對于面向連接的TCP服務(wù)應(yīng)用,安全,但是效率低;數(shù)據(jù)報式Socket(DATAGRAM):
是一種無連接的Socket,對應(yīng)于無連接的UDP服務(wù)應(yīng)用.不安全(丟失,順序混亂,在接收端要分析重排及要求重發(fā)),但效率高.Socket一般應(yīng)用模式(服務(wù)器端和客戶端)1.服務(wù)端ingsocket開始監(jiān)聽端口(負(fù)責(zé)監(jiān)聽客戶端連接信息)
2.客戶端clientsocket連接服務(wù)端指定端口(負(fù)責(zé)接收和發(fā)送服務(wù)端消息)
3.服務(wù)端ingsocket監(jiān)聽到客戶端連接,創(chuàng)建connectionsocket。(負(fù)責(zé)和客戶端通信)1.2.3.負(fù)責(zé)監(jiān)聽‘連接請求’的套接字客戶端套接字負(fù)責(zé)和客戶端通信的套接字Socket一般應(yīng)用模式(服務(wù)器端和客戶端)服務(wù)器端的Socket(至少需要兩個)一個負(fù)責(zé)接收客戶端連接請求(但不負(fù)責(zé)與客戶端通信)每成功接收到一個客戶端的連接便在服務(wù)端產(chǎn)生一個對應(yīng)的負(fù)責(zé)通信的Socket在接收到客戶端連接時創(chuàng)建.為每個連接成功的客戶端請求在服務(wù)端都創(chuàng)建一個對應(yīng)的Socket(負(fù)責(zé)和客戶端通信).客戶端的Socket客戶端Socket必須指定要連接的服務(wù)端地址和端口。通過創(chuàng)建一個Socket對象來初始化一個到服務(wù)器端的TCP連接。
Socket的通訊過程服務(wù)器端:申請一個socket綁定到一個IP地址和一個端口上開啟偵聽,等待接授連接客戶端:申請一個socket連接服務(wù)器(指明IP地址和端口號)服務(wù)器端接到連接請求后,產(chǎn)生一個新的socket(端口大于1024)與客戶端建立連接并進(jìn)行通訊,原監(jiān)聽socket繼續(xù)監(jiān)聽。連接通過構(gòu)造函數(shù)完成。
publicSocket(AddressFamilyaddressFamily,SocketTypesocketType,ProtocolTypeprotocolType)AddressFamily
成員指定
Socket
用來解析地址的尋址方案。例如,InterNetwork
指示當(dāng)
Socket使用一個IP版本4地址連接。SocketType
定義要打開的
Socket
的類型Socket
類使用
ProtocolType
枚舉向WindowsSocketsAPI
通知所請求的協(xié)議Socket的構(gòu)造函數(shù)
如:mySocket=newSocket(AddressFamily.InterNetwork,
SocketType.Stream,ProtocolType.Tcp);Demo1:監(jiān)聽注意:至少要定義一個要連接的遠(yuǎn)程主機(jī)的IP和端口號。端口號必須在1和65535之間,最好在1024以后。要連接的遠(yuǎn)程主機(jī)必須正在監(jiān)聽指定端口,也就是說你無法隨意連接遠(yuǎn)程主機(jī)。如:IPAddressaddr=IPAddress.Parse("");IPEndPointendp=newIPEndPoint(addr,10001); 服務(wù)端先綁定:eSocket.Bind(endp) 客戶端再連接:clientSocket.Connect(endp)注意:一個Socket一次只能連接一臺主機(jī)。Socket關(guān)閉后無法再次使用。每個Socket對象只能一臺遠(yuǎn)程主機(jī)連接.如果你想連接到多臺遠(yuǎn)程主機(jī),你必須創(chuàng)建多個Socket對象。------------------相關(guān)類--------------------------IPAddress類:包含了一個IP地址IPEndPoint類:包含了一對IP地址和端口號--------------------方法們------------------------------Socket():創(chuàng)建一個SocketBind():綁定一個本地的IP和端口號(IPEndPoint)Listen():讓Socket偵聽傳入的連接嘗試,并指定偵聽隊列容量Connect():初始化與另一個Socket的連接Accept():接收連接并返回一個新的socketSend():輸出數(shù)據(jù)到SocketReceive():從Socket中讀取數(shù)據(jù)Close():關(guān)閉Socket(銷毀連接)Socket方法Demo2:發(fā)送文字信息Socket通信基本流程圖基于TCP的Socket編程TCPservice:可靠的字節(jié)流傳輸
processTCPwithbuffers,variablessocket由軟件工程師控制由操作系統(tǒng)控制processTCPwithbuffers,variablessocketinternetclientserverSocket()Connect()Socket()Bind()Listen()accept()Send()Receive()Close()Close()ReceiveSend()TCPconn.requestTC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職(家政服務(wù))化妝造型技能試題及答案
- 2025年大學(xué)增材制造技術(shù)(材料研發(fā))試題及答案
- 2025年大學(xué)大一(農(nóng)業(yè)工程)農(nóng)業(yè)機(jī)械化基礎(chǔ)階段試題
- 2025年大學(xué)生理學(xué)實踐(生理實踐操作)試題及答案
- 2025年大學(xué)旅游管理(導(dǎo)游學(xué))試題及答案
- 2026年租賃市場與購房市場的政策差異
- 禁毒防艾知識培訓(xùn)課件
- 禁毒志愿者業(yè)務(wù)培訓(xùn)課件
- 大理消防安全執(zhí)法大隊
- AI培訓(xùn)公司排名
- 全國秸稈綜合利用重點縣秸稈還田監(jiān)測工作方案
- 吞咽障礙患者誤吸的預(yù)防與管理方案
- 中小企業(yè)人才流失問題及對策分析
- 2026年湖南鐵路科技職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫含答案
- (新教材)2025年人教版八年級上冊歷史期末復(fù)習(xí)全冊知識點梳理
- 招標(biāo)人主體責(zé)任履行指引
- 鋁方通吊頂施工技術(shù)措施方案
- 欠款過戶車輛協(xié)議書
- 2025年江西省高職單招文化統(tǒng)考(語文)
- 解讀(2025年版)輸卵管積水造影診斷中國專家共識
- 創(chuàng)新中心人員管理制度
評論
0/150
提交評論