📄 lightmultimessagereceiver.cs
字号:
namespace Imps.Client.Core
{
using System;
using System.Runtime.CompilerServices;
public class LightMultiMessageReceiver
{
private object _context;
private int _counter;
private int _num;
public event EventHandler AllMessagesReceived;
public LightMultiMessageReceiver(int num)
{
this._num = num;
this.Reset();
}
protected void OnAllMessagesReceived(EventArgs e)
{
EventHandler allMessagesReceived = this.AllMessagesReceived;
if (allMessagesReceived != null)
{
allMessagesReceived(this, e);
}
}
public void ReceiveMessage()
{
lock (this)
{
if (--this._counter <= 0)
{
this.OnAllMessagesReceived(EventArgs.Empty);
}
}
}
public void Reset()
{
this.Reset(null);
}
public void Reset(object context)
{
lock (this)
{
this._counter = this._num;
this._context = context;
}
}
public object Context
{
get
{
return this._context;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -