*TEST* send udp sync. Stop uncontroled and hidden use of IO threads.

Testing this may require several people.
avinationmerge
UbitUmarov 2014-10-13 13:17:48 +01:00
parent a301bad8ad
commit 8c41271b33
2 changed files with 19 additions and 2 deletions

View File

@ -1305,7 +1305,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
PacketsSentCount++;
// Put the UDP payload on the wire
AsyncBeginSend(buffer);
//AsyncBeginSend(buffer);
SyncSend(buffer);
// Keep track of when this packet was sent out (right now)
outgoingPacket.TickCount = Environment.TickCount & Int32.MaxValue;

View File

@ -375,12 +375,28 @@ namespace OpenMetaverse
// Synchronous mode waits until the packet callback completes
// before starting the receive to fetch another packet
if (!m_asyncPacketHandling)
// if (!m_asyncPacketHandling)
AsyncBeginReceive();
}
}
}
public void SyncSend(UDPPacketBuffer buf)
{
try
{
m_udpSocket.SendTo(
buf.Data,
0,
buf.DataLength,
SocketFlags.None,
buf.RemoteEndPoint
);
}
catch (SocketException) { }
catch (ObjectDisposedException) { }
}
public void AsyncBeginSend(UDPPacketBuffer buf)
{
// if (IsRunningOutbound)