與UDP不同,基于TCP協(xié)議的編程的服務(wù)器端有一個(gè)監(jiān)聽(tīng)對(duì)象:TcpListener,它負(fù)責(zé)監(jiān)聽(tīng)來(lái)自客戶(hù)端的消息并處理,并且必須在保持連接的情況下與客戶(hù)端保持互動(dòng),下面舉個(gè)例子來(lái)說(shuō)明這個(gè)問(wèn)題。
示例一:基于TCP協(xié)議的網(wǎng)絡(luò)編程
窗體:


Form2做為本程序的服務(wù)器端,當(dāng)按下Start后,啟動(dòng)服務(wù),剩下的是一個(gè)Form1,我啟動(dòng)了兩次,都連接到Form2,當(dāng)在Form1的Send欄里寫(xiě)入小寫(xiě)字母并按下Send按鈕后,將該字符串發(fā)送至Form2,同時(shí)Form2將該字符串轉(zhuǎn)換為大寫(xiě),返回給發(fā)送者,說(shuō)明完畢,出個(gè)謎語(yǔ),誰(shuí)知道兩個(gè)Form1里字母是啥意思?
|
public partial class Form2 : Form |
|
public partial class Form1 : Form |
|
|
這里說(shuō)下為什么需要ClientTcp這么個(gè)類(lèi),說(shuō)這個(gè)之前,先說(shuō)一下為什么服務(wù)器端需要開(kāi)啟一個(gè)新的線程來(lái)監(jiān)控端口,這個(gè)原因比較簡(jiǎn)單,Socket sock = tl.AcceptSocket();
新聞熱點(diǎn)
疑難解答
圖片精選