例項解析SOCKET程式設計模型(二)

2021-04-13 03:28:39 字數 1208 閱讀 5114

以下是同步聊天程式的客戶端源**。其中的一些過程可以參考伺服器端原始碼

using system;

using system.drawing;

using system.collections;

using system.componentmodel;

using system.windows.forms;

using system.data;

using system.net;

using system.net.sockets;

using system.threading;

using system.text;

namespace 聊天_socket_client

///

/// 清理所有正在使用的資源。

///

protected override void dispose( bool disposing )

}base.dispose( disposing );

}#region windows 窗體設計器生成的**

///

/// 設計器支援所需的方法 - 不要使用**編輯器修改

/// 此方法的內容。

///

private void initializecomponent()

#endregion

///

/// 應用程式的主入口點。

///

[stathread]

static void main()

private void btnconnect_click(object sender, system.eventargs e)

catch

trycatch(exception ee)

}private void threadproc()

}private void btnsend_click(object sender, system.eventargs e)

catch

}private void btnstop_click(object sender, system.eventargs e)

catch

}private void form1_closing(object sender, system.componentmodel.canceleventargs e)

catch{}}}

}

續例項解析SOCKET程式設計模型之非同步通訊篇(下)

非同步客戶端套接字在等待網路操作完成時不掛起應用程式。相反,它使用標準 net framework 非同步程式設計模型在乙個執行緒上處理網路連線,而應用程式繼續在原始執行緒上執行。非同步套接字適用於大量使用網路或不能等待網路操作完成才能繼續的應用程式。socket 類遵循非同步方法的 net fra...

socket程式設計(二) select 模型

select 模型是winsock中最常見的i o模型,主要是它能夠防止程式在套接字處於阻塞模式的時候經過一次i o操作後被阻塞,同時也能夠防止套接字處於非阻塞模式產生的wsaewouldblock錯誤 select模式也是最簡單的乙個i o模式 int select int nfds,fd set...

Socket程式設計例項

struct sockaddr sockaddr定義的標頭檔案 sys socket.h struct sockaddr in sockaddr in解決了sockaddr 的缺陷,實際上相當於把sockaddr 中的sa data分成了3個部分 sockaddr in 定義的標頭檔案 netine...