private static void DoCall(Object obj)
{
MethodInfo methodInfo = (MethodInfo)((Object[])obj)[0];
Object[] args = (Object[])((Object[])obj)[1];
string callName = (string)((Object[])obj)[2];
Primitive result = "";
try
{
if (methodInfo.ReturnType == typeof(Primitive)) result = (Primitive)methodInfo.Invoke(null, args);
else methodInfo.Invoke(null, args);
}
catch (Exception ex)
{
Utilities.OnError(Utilities.GetCurrentMethod(), ex);
}
lock (lockCall)
{
lastResult = result;
lastCall = callName;
if (null != _CallCompleteDelegate) _CallCompleteDelegate();
}
}