This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
@@ -0,0 +1,65 @@
using System;
using System.Runtime.Remoting.Messaging;
namespace System.Runtime.Remoting.Contexts
{
// Token: 0x020003CB RID: 971
internal class SynchronizedClientContextSink : IMessageSink
{
// Token: 0x06002646 RID: 9798 RVA: 0x0007E3E0 File Offset: 0x0007C5E0
public SynchronizedClientContextSink(IMessageSink next, SynchronizationAttribute att)
{
this._att = att;
this._next = next;
}
// Token: 0x17000727 RID: 1831
// (get) Token: 0x06002647 RID: 9799 RVA: 0x0007E3F8 File Offset: 0x0007C5F8
public IMessageSink NextSink
{
get
{
return this._next;
}
}
// Token: 0x06002648 RID: 9800 RVA: 0x0007E400 File Offset: 0x0007C600
public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink)
{
if (this._att.IsReEntrant)
{
this._att.ReleaseLock();
replySink = new SynchronizedContextReplySink(replySink, this._att, true);
}
return this._next.AsyncProcessMessage(msg, replySink);
}
// Token: 0x06002649 RID: 9801 RVA: 0x0007E444 File Offset: 0x0007C644
public IMessage SyncProcessMessage(IMessage msg)
{
if (this._att.IsReEntrant)
{
this._att.ReleaseLock();
}
IMessage message;
try
{
message = this._next.SyncProcessMessage(msg);
}
finally
{
if (this._att.IsReEntrant)
{
this._att.AcquireLock();
}
}
return message;
}
// Token: 0x04000EEC RID: 3820
private IMessageSink _next;
// Token: 0x04000EED RID: 3821
private SynchronizationAttribute _att;
}
}