コード例 #1
0
        public bool AddKey(string key, CallbackInfo updateCallback, CallbackInfo removeCallback)
        {
            lock (_interestedKeys)
            {
                if (!_interestedKeys.ContainsKey(key))
                {
                    _interestedKeys.Add(key, new NotificationEntry(updateCallback, removeCallback)
                    {
                        RegistrationTime = HPTime.Now
                    });
                    return(true);
                }
                else
                {
                    NotificationEntry entry = _interestedKeys[key];
                    entry.SetNotifications(updateCallback, removeCallback);
                    _interestedKeys[key] = entry;
                }
            }

            return(false);
        }