Photon Server API
Public Member Functions | Protected Member Functions | Properties | List of all members
ExitGames.Concurrency.Channels.KeyedBatchSubscriber< K, T > Class Template Reference

Channel subscription that drops duplicates based upon a key. More...

Inheritance diagram for ExitGames.Concurrency.Channels.KeyedBatchSubscriber< K, T >:
ExitGames.Concurrency.Channels.BaseSubscription< T > ExitGames.Concurrency.Channels.ISubscribable< T > ExitGames.Concurrency.Channels.IProducerThreadSubscriber< T >

Public Member Functions

 KeyedBatchSubscriber (Converter< T, K > keyResolver, Action< IDictionary< K, T >> target, IFiber fiber, int flushIntervalInMs)
 Construct new instance. More...
 
void Flush ()
 Flushed from fiber More...
 
- Public Member Functions inherited from ExitGames.Concurrency.Channels.BaseSubscription< T >
void ReceiveOnProducerThread (T msg)
 IProducerThreadSubscriber<T>.ReceiveOnProducerThread More...
 

Protected Member Functions

override void OnMessageOnProducerThread (T msg)
 received on delivery thread More...
 

Properties

override ISubscriptionRegistry Subscriptions [get]
 
- Properties inherited from ExitGames.Concurrency.Channels.BaseSubscription< T >
Filter< T > FilterOnProducerThread [get, set]
 ISubscribable<T>.FilterOnProducerThread More...
 
abstract ISubscriptionRegistry Subscriptions [get]
 
- Properties inherited from ExitGames.Concurrency.Channels.ISubscribable< T >
Filter< T > FilterOnProducerThread [get, set]
 Filter called from producer threads. Should be thread safe as it may be called from multiple threads. More...
 
- Properties inherited from ExitGames.Concurrency.Channels.IProducerThreadSubscriber< T >
ISubscriptionRegistry Subscriptions [get]
 

Detailed Description

Channel subscription that drops duplicates based upon a key.

Template Parameters
K
T

Constructor & Destructor Documentation

ExitGames.Concurrency.Channels.KeyedBatchSubscriber< K, T >.KeyedBatchSubscriber ( Converter< T, K >  keyResolver,
Action< IDictionary< K, T >>  target,
IFiber  fiber,
int  flushIntervalInMs 
)
inline

Construct new instance.

Parameters
keyResolver
target
fiber
flushIntervalInMs

summary> Allows for the registration and deregistration of subscriptions /summary>

Member Function Documentation

Flushed from fiber

override void ExitGames.Concurrency.Channels.KeyedBatchSubscriber< K, T >.OnMessageOnProducerThread ( msg)
inlineprotectedvirtual

received on delivery thread

Parameters
msg

Implements ExitGames.Concurrency.Channels.BaseSubscription< T >.

Property Documentation