mirror of
https://github.com/ZuneDev/MicrosoftIris.git
synced 2026-07-27 13:13:29 -07:00
Better debug message for DeferredInvokeProxy
This commit is contained in:
@@ -10,13 +10,17 @@ namespace Microsoft.Iris
|
|||||||
{
|
{
|
||||||
internal class DeferredInvokeProxy
|
internal class DeferredInvokeProxy
|
||||||
{
|
{
|
||||||
private DeferredInvokeHandler _method;
|
private readonly DeferredInvokeHandler _method;
|
||||||
|
|
||||||
public static DeferredHandler Thunk(DeferredInvokeHandler method) => new DeferredHandler(new DeferredInvokeProxy()
|
private DeferredInvokeProxy(DeferredInvokeHandler method)
|
||||||
{
|
{
|
||||||
_method = method
|
_method = method;
|
||||||
}.Thunk);
|
}
|
||||||
|
|
||||||
|
public static DeferredHandler Thunk(DeferredInvokeHandler method) => new DeferredInvokeProxy(method).Thunk;
|
||||||
|
|
||||||
private void Thunk(object args) => _method(args);
|
private void Thunk(object args) => _method(args);
|
||||||
|
|
||||||
|
public override string ToString() => $"{_method.Method.DeclaringType?.FullName}.{_method.Method.Name}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,13 +73,18 @@ namespace Microsoft.Iris.Queues
|
|||||||
QueueItem nextItem = queue.GetNextItem();
|
QueueItem nextItem = queue.GetNextItem();
|
||||||
if (nextItem != null)
|
if (nextItem != null)
|
||||||
{
|
{
|
||||||
Application.Debugger?.LogDispatcher(nextItem.ToDebugPacketString());
|
var debugString = nextItem.ToDebugPacketString();
|
||||||
|
Application.Debugger?.LogDispatcher(debugString);
|
||||||
|
Trace.WriteLine(TraceCategory.Queues, 0, "Dispatcher nextItem := {0}", debugString);
|
||||||
|
|
||||||
nextItem.Dispatch();
|
nextItem.Dispatch();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
LeaveDispatch();
|
LeaveDispatch();
|
||||||
|
|||||||
@@ -158,14 +158,16 @@ namespace Microsoft.Iris.Session
|
|||||||
|
|
||||||
public override string ToDebugPacketString()
|
public override string ToDebugPacketString()
|
||||||
{
|
{
|
||||||
string packetString = _target?.Target == null
|
if (_target.Target is DeferredInvokeProxy deferredInvokeProxy)
|
||||||
|
return $"{deferredInvokeProxy}({_param})";
|
||||||
|
|
||||||
|
var packetString = _target?.Target == null
|
||||||
? string.Empty
|
? string.Empty
|
||||||
: $"{_target.Target}.";
|
: $"{_target.Target}.";
|
||||||
|
|
||||||
packetString += _target switch
|
packetString += _target switch
|
||||||
{
|
{
|
||||||
SimpleCallback simpleCallback => simpleCallback.Method.Name,
|
SimpleCallback simpleCallback => simpleCallback.Method.Name,
|
||||||
DeferredHandler deferredHandler => $"{deferredHandler.Method.Name}({_param})",
|
|
||||||
EventHandler eventHandler => $"{eventHandler.Method.Name}({_param}, {_args})",
|
EventHandler eventHandler => $"{eventHandler.Method.Name}({_param}, {_args})",
|
||||||
_ when _param is IDeferredInvokeItem deferredInvokeItem => deferredInvokeItem.ToString(),
|
_ when _param is IDeferredInvokeItem deferredInvokeItem => deferredInvokeItem.ToString(),
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user