伺服器和客戶端
啟動伺服器
要啟動伺服器,首先需要取得伺服器對象,如下例所示。 伺服器建立後,不會立即建立與客戶端或執行緒池的通信,因此必須透過在建立的物件上呼叫 Start 來運行伺服器。
1. 創建伺服器
m_netServer = Proud::CNetServer::Create();
// 可以使用delete運算子刪除已修復的物件。
delete m_netServer;Nettention.Proud.NetServer netServer = new Nettention.Proud.NetServer();在啟動伺服器之前,請務必檢查伺服器的伺服器的UDP連接埠類型。
2. 準備
// 將 ProudNet 進行 include 。
#include “include\ProudNetServer.h”
// 在 ProudNet 中,所有物件都被分組到一個名為 Proud 的namespace中。
using namespace Proud;
// port 定義
int g_ServerPort = 33334;// 添加至使用Proud
using Nettention.Proud;
// 預先定義要使用的port
int serverPort = 33334;3. 啟動伺服器
先建立一個伺服器對象,然後呼叫SetEventSink函數。 這是註冊對像以接收伺服器上發生的事件的回調的過程。 如果將指針傳遞給透過繼承 INetServerEvent 物件建立的對象,伺服器將透過該物件回呼事件。
💡在上面的程式碼範例中,g_eventSink 是使用下列結構建立的物件。
CNetClientInfo物件包含連線的客戶端訊息,CNetClientInfo的成員m_HostID是可以識別每個主機的ID值。
💡C# 中的 NetClientInfo 與 C++ 中的 CNetClientInfo 的作用相同。
4. 解除連接
函數
註釋
Stop
伺服器停止了。 斷開所有連線。
CloseConnection(Client的 HostID)
中斷與對應客戶端的連線。
5. 開始接收客戶端連接
為了接收來自伺服器的客戶端連接,需要在伺服器端準備一個Listening Port和執行緒池。 為此,我們需要建立一個 Server 對象,然後呼叫其 Start 方法。
開始使用客戶端
與伺服器一樣,客戶端也可以在建立物件後連接到伺服器。
1. 創建客戶端
2. 準備
3. 開始
客戶端連接到伺服器時發生的事件
當執行 Connect 時,OnConnectionRequest 到達伺服器,您可以在其中拒絕用戶端嘗試連線。
如果您在 OnConnectionRequest 中接受客戶端連接,則所有連接過程都會完成,並且將從客戶端和伺服器接收事件,如下面的程式碼範例所示。
4. 解除連接
活用
如何使用伺服器如何使用客戶端Last updated