Я использую следующий код для прослушивания, но он не получает мои пакеты. Я отправляю пакеты и могу получать пакеты UDP только тогда, когда использую другую утилиту для их получения.
Unity script
private UdpClient Client = new UdpClient(9217);
...
// Start:
Client.BeginReceive(new AsyncCallback(recv), null); // ? Here the error occurs.
private void recv(IAsyncResult res)
{
try
{
IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 9217);
byte[] received = Client.EndReceive(res, ref RemoteIpEndPoint);
Debug.Log("Data received:" + Encoding.ASCII.GetString(received));
Client.BeginReceive(new AsyncCallback(recv), null);
}
catch (Exception e)
{
Debug.LogError(e);
}
}
В указанной строке возникает исключение когда я играю в игру в редакторе Unity:
Object reference not set to an instance of an object
Есть ли другой способ выполнить эту очень простую работу, используя C# (или используя библиотеки Unity)?