internal void merge(MessageAgent fromAgent)
{
System.Object[] msgs = fromAgent.MessageArray;
for (int i = 0; i < msgs.Length; i++)
{
messages.Add(msgs[i]);
((Message) (msgs[i])).Agent = this;
}
lock (messages)
{
if (msgs.Length > 1)
{
System.Threading.Monitor.PulseAll(messages); // wake all threads waiting for messages
}
else if (msgs.Length == 1)
{
System.Threading.Monitor.Pulse(messages); // only wake one thread
}
}
return ;
}