freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

aspnet全面掌握visualc實(shí)現(xiàn)udp協(xié)議-資料下載頁(yè)

2025-08-12 16:31本頁(yè)面

【導(dǎo)讀】無(wú)連接主要是和TCP協(xié)議相比較的。我們知道當(dāng)利用TCP協(xié)議傳送數(shù)據(jù)的時(shí)候,首先。必須先建立連接才可以傳輸數(shù)據(jù)。不需要進(jìn)行連接。當(dāng)然如果你非要進(jìn)行連接,通過(guò)VisualC#也是可以實(shí)現(xiàn)的,但前提。給程序運(yùn)行帶來(lái)了不安定的因素。所以這種方法并不值得提倡。但同時(shí)也給基于UDP協(xié)議編寫的程序帶來(lái)了一個(gè)致命的缺點(diǎn),UDP由于不提供可??繑?shù)據(jù)的傳輸,當(dāng)計(jì)算機(jī)之間利用UDP協(xié)議傳送數(shù)據(jù)的時(shí)候,發(fā)送方只管發(fā)送數(shù)據(jù),而并不確認(rèn)數(shù)據(jù)是否被對(duì)方接收。這樣就會(huì)導(dǎo)致某些UDP協(xié)議數(shù)據(jù)包在傳送的過(guò)程中。丟失,尤其網(wǎng)絡(luò)質(zhì)量不令人滿意的情況下,丟失數(shù)據(jù)包的現(xiàn)象會(huì)更嚴(yán)重。如目前網(wǎng)絡(luò)流行的很多即時(shí)聊天程序,如OICQ和ICQ等,采用的就是。同時(shí)雖然UDP協(xié)議無(wú)法保證數(shù)據(jù)可靠性,但具有對(duì)網(wǎng)絡(luò)資源開(kāi)銷較小,數(shù)。程序在運(yùn)行時(shí),由于受到環(huán)境影響較小,所以不容易出錯(cuò)。用VisualC#實(shí)現(xiàn)UDP協(xié)議,最為常用,也是最為關(guān)鍵的類就是UdpClient,UdpClient. endPoint一個(gè)IPEndPoint,它表示要將數(shù)據(jù)文報(bào)發(fā)送到的主機(jī)和端口。返回值已發(fā)送的字節(jié)數(shù)。

  

【正文】 間日期數(shù)據(jù)。 { client = new UdpClient ( port ) 。 IPAddress a = ( 127001 ) 。 receivePoint = new IPEndPoint ( a , port ) 。 IPAddress HostIP 。 bool continueLoop = true 。 while ( continueLoop ) { string hostName = ( ) 。 encode = new ( ) 。 //定義發(fā)送到服務(wù)器端的請(qǐng)求信息 //請(qǐng)求信息是一個(gè)字符串,為客戶端名稱和接收服務(wù)器反饋信息的端口號(hào)組成的字符串 string sendString = hostName + / + ( ) 。 byte[] sendData = ( sendString ) 。 //判斷使用者輸入的是 IP地址還是計(jì)算機(jī)名稱 try { HostIP = ( ) 。 } catch { //如果輸入的是計(jì)算機(jī)名稱,則按照?qǐng)?zhí)行下列代碼。 //發(fā)送請(qǐng)求信息 ( sendData , sendData. Length , , 8080 ) 。 //接收來(lái)自服務(wù)器端的信息 byte[] recData = ( ref receivePoint ) 。 timeString = ( recData ) 。 ( ) 。 continueLoop=false 。 return 。 } //輸入的是 IP地址,則執(zhí)行下列代碼 IPEndPoint host = new IPEndPoint ( HostIP ,8080 ) 。 //發(fā)送請(qǐng)求信息 ( sendData , , host ) 。 //接收來(lái)自服務(wù)器端的信息 byte[] recData1 = ( ref receivePoint ) 。 //獲取服務(wù)器端的時(shí)間和日期 timeString = ( recData1 ) 。 ( ) 。 //退出循環(huán) continueLoop=false 。 } } 如果“ start_client”過(guò)程正確調(diào)用,就把服務(wù)器端的時(shí)間和日期保存到 timeString 字符串中了。 中 button1 的“ Click”事件的處理代碼。下列代碼的功能是調(diào)用“ start_client”過(guò)程,獲取并顯示服務(wù)器端程序的時(shí)間和日期信息。 private void button1_Click ( object sender , e ) { start_client ( ) 。 = ( ) 。 //顯示客戶端當(dāng)前時(shí)間和日期 = timeString 。 //顯示服務(wù)器當(dāng)前時(shí)間和日期 } 中 button2 的“ Click”事件對(duì)應(yīng)的處理代碼。下列代碼的功能是根據(jù)獲取的服務(wù)器時(shí)間和日期數(shù)據(jù)來(lái)更正客戶端時(shí)間和日期。 private void button2_Click ( object sender , e ) { start_client ( ) 。 //把接收來(lái)的數(shù)據(jù)轉(zhuǎn)換時(shí)間日期格式 try { temp = ( timeString ) 。 } catch { ( 錯(cuò)誤時(shí)間 ) 。 return 。 } //根據(jù)得到的時(shí)間日期,來(lái)定義時(shí)間、日期 SystemTime st= new SystemTime ( ) 。 = ( short ) 。 = ( short ) 。 = ( short ) 。 = ( short ) 。 = ( ) 。 if ( =12 ) { = ( short )8 。 } else if ( = 8 ) { = ( short )8 。 } else { += ( short )16 。 } = ( ) 。 = ( ) 。 = ( ) 。 //修改本地端的時(shí)間和日期 if ( SetSystemTime ( st ) ) { ( ( ) ,修改成功 ) 。 } else ( 不成功! ,不成功 ) 。 } 至此,在正確完成上述步驟,全部保存后,【網(wǎng)絡(luò)對(duì)時(shí)客戶端】項(xiàng)目的全部工作就完成了。 六.運(yùn)行基于 UDP 協(xié)議網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng),實(shí)現(xiàn)網(wǎng)絡(luò)對(duì)時(shí): 首先要確認(rèn)確認(rèn)網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng)中的服務(wù)器端程序已經(jīng)運(yùn)行和其 IP 地 址或主機(jī)名。然后在客戶機(jī)上運(yùn)行網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng)中的客戶端程序,在正確輸入運(yùn)行網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng)服務(wù)器端程序?qū)?yīng)的主機(jī)名或者 IP 地址后,單擊客戶端程序中【獲取】按鈕,則在程序的文本框中顯示服務(wù)器當(dāng)前時(shí)間和日期和客戶端當(dāng)前的時(shí)間和日期。若發(fā)現(xiàn)二種存在差異,單擊【對(duì)時(shí)】按鈕,則將以服務(wù)器當(dāng)前時(shí)間和日期來(lái)修正客戶機(jī)的時(shí)間和日期。修改成功則彈出【修改成功】提示框,反之則彈出【不成功】提示框,圖 04 是【 UDP 對(duì)時(shí)客戶端】項(xiàng)目根據(jù)服務(wù)器端當(dāng)前時(shí)間和日期信息成功更改本地時(shí)間和日期后的界面: 圖 04:【 UDP 對(duì)時(shí)客戶端】項(xiàng)目的運(yùn)行界面 七.總結(jié): 本文詳細(xì)介紹了 UDP 協(xié)議, .Net FrameWork SDK 提供給 Visual C#用以操作 UDP 協(xié)議的主要類庫(kù),以及通過(guò)一個(gè)具體而使用的示例 —— 實(shí)現(xiàn)一個(gè)網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng),介紹在 Visual C#實(shí)現(xiàn) UDP 協(xié)議的具體方法和過(guò)程。 UDP 由于其自身的缺點(diǎn)注定在某些領(lǐng)域無(wú)法利用它,但在可以利用 它的領(lǐng)域, UDP 以其快捷、簡(jiǎn)單、實(shí)用的特點(diǎn)正在受到更多程序員的歡迎。尤其在現(xiàn)代,網(wǎng)絡(luò)運(yùn)行態(tài)勢(shì)越來(lái)越好的情況下,可以預(yù)見(jiàn)的是 UDP 在網(wǎng)絡(luò)中的應(yīng)用情景將更廣闊。希望本文的內(nèi)容對(duì)您掌握用 Visual C#編寫基于 UDP 的網(wǎng)絡(luò)應(yīng)用程序有所幫助。 (責(zé)任編輯: 戰(zhàn)瑩 )
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1