private void OnNewGroupEvent(object sender, GroupEventEventAgrs args)
{
lock (this)
{
if (args.GroupEvent.Group != null)
{
var id = args.GroupEvent.Group.Id;
var group = this.framework.GroupManager.Groups[id];
if (group != null)
{
group.OnNewGroupEvent(args.GroupEvent);
var list = this.listenersByGroupId[id];
list?.ForEach(l => l.Queue.Enqueue(args.GroupEvent));
}
}
}
}