m
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002077 RID: 8311
|
||||
[Token(Token = "0x2002077")]
|
||||
public sealed class HeartbeatManager
|
||||
{
|
||||
// Token: 0x0600D0B7 RID: 53431 RVA: 0x002F68AC File Offset: 0x002F4AAC
|
||||
[Token(Token = "0x600D0B7")]
|
||||
[Address(RVA = "0x2A7FEE0", Offset = "0x2A7EEE0", VA = "0x182A7FEE0")]
|
||||
public void Subscribe(IHeartbeat heartbeat)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
if (!this.Heartbeats.Contains(heartbeat))
|
||||
{
|
||||
this.Heartbeats.Add(heartbeat);
|
||||
}
|
||||
Monitor.Exit(heartbeats);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600D0B8 RID: 53432 RVA: 0x002F68F4 File Offset: 0x002F4AF4
|
||||
[Token(Token = "0x600D0B8")]
|
||||
[Address(RVA = "0x2A7FFD0", Offset = "0x2A7EFD0", VA = "0x182A7FFD0")]
|
||||
public void Unsubscribe(IHeartbeat heartbeat)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
bool flag = this.Heartbeats.Remove(heartbeat);
|
||||
Monitor.Exit(heartbeats);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600D0B9 RID: 53433 RVA: 0x002F6928 File Offset: 0x002F4B28
|
||||
[Token(Token = "0x600D0B9")]
|
||||
[Address(RVA = "0x2A800A0", Offset = "0x2A7F0A0", VA = "0x182A800A0")]
|
||||
public void Update()
|
||||
{
|
||||
int num = 0;
|
||||
DateTime lastUpdate = this.LastUpdate;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
if (!(lastUpdate == minValue))
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime lastUpdate2 = this.LastUpdate;
|
||||
TimeSpan timeSpan = utcNow - lastUpdate2;
|
||||
DateTime utcNow2 = DateTime.UtcNow;
|
||||
this.LastUpdate = utcNow2;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
IHeartbeat[] updateArray = this.UpdateArray;
|
||||
if (updateArray != 0)
|
||||
{
|
||||
int size = this.Heartbeats._size;
|
||||
if (updateArray.Length >= size)
|
||||
{
|
||||
goto IL_7F;
|
||||
}
|
||||
}
|
||||
List<IHeartbeat> heartbeats2 = this.Heartbeats;
|
||||
IL_7F:
|
||||
int size2 = this.Heartbeats._size;
|
||||
List<IHeartbeat> heartbeats3 = this.Heartbeats;
|
||||
int num2 = 0;
|
||||
Monitor.Exit(heartbeats);
|
||||
if (num != 0)
|
||||
{
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
IHeartbeat heartbeat = this.UpdateArray[num2];
|
||||
num2++;
|
||||
}
|
||||
DateTime utcNow3 = DateTime.UtcNow;
|
||||
this.LastUpdate = utcNow3;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0BA RID: 53434 RVA: 0x002F6A28 File Offset: 0x002F4C28
|
||||
[Token(Token = "0x600D0BA")]
|
||||
[Address(RVA = "0x2A80320", Offset = "0x2A7F320", VA = "0x182A80320")]
|
||||
public HeartbeatManager()
|
||||
{
|
||||
List<IHeartbeat> list = new List();
|
||||
this.Heartbeats = list;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
this.LastUpdate = minValue;
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x04008423 RID: 33827
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008423")]
|
||||
private List<IHeartbeat> Heartbeats;
|
||||
|
||||
// Token: 0x04008424 RID: 33828
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008424")]
|
||||
private IHeartbeat[] UpdateArray;
|
||||
|
||||
// Token: 0x04008425 RID: 33829
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008425")]
|
||||
private DateTime LastUpdate;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user