Предполагая, что я объявил
public event EventArgs<SyslogMessageEventArgs> MessageReceived;
public int SubscribedClients
{
get [...]
}
Я хотел бы подсчитать, сколько "подписанных клиентов" у моего класса. Мне нужно суммировать те, которые подписались по сети, хотя мои API (не показаны в фрагменте) плюс те, что сделали channel.MessageReceived+=myMethod;
.
Я знаю, что события С# могут быть явно объявлены с помощью операторов add
и remove
, и я могу с уверенностью подсчитать + или -1 в локальном счетчике, но я никогда не писал код для явных событий на С#, поэтому я не знаю точно, что больше делать для добавления и удаления, а не для обновления счетчика.
Спасибо.