private InterleavedParallelEventHandler <EventType>[] GetDeserializers(int parallelism)
        {
            Action <EventType, long, bool> deserializeAction = (@event, sequence, isEndOfBatch) =>
            {
                @event.IncomingMessage.Content     = JsonConvert.DeserializeObject <IncomingMessageContent>(@event.IncomingMessage.ContentJson);
                @event.IncomingMessage.ContentJson = null;
            };

            return(InterleavedParallelEventHandler <EventType> .Group(parallelism, deserializeAction));
        }
예제 #2
0
        public static InterleavedParallelEventHandler <T>[] Group(int parallelism, Action <T, long, bool> action)
        {
            var toReturn = new InterleavedParallelEventHandler <T> [parallelism];

            for (var i = 0; i < parallelism; i++)
            {
                toReturn[i] = new InterleavedParallelEventHandler <T>(i, parallelism, action);
            }

            return(toReturn);
        }