static void Write(string filePath) { long batchSize = 1000L; long collectionSize = COLLECTION_SIZE; var stSize = Marshal.SizeOf(typeof(PayloadEvent)); var fileSize = stSize * collectionSize; int currentPercent = 0; var batchCount = collectionSize / batchSize; using (var mmFile = MemoryMappedFile.CreateFromFile( filePath, FileMode.Create, "fileHandle", fileSize)) { for (int b = 0; b < batchCount; b++) { using (var myAccessor = mmFile.CreateViewAccessor(b * batchSize * stSize, batchSize * stSize)) { for (long i = 0; i < batchSize; i++) { var newEl = new PayloadEvent(EventType.start, 100); myAccessor.Write(i * stSize, ref newEl); var tempPercent = (int)(100 * (i + b * batchSize) / collectionSize); if (currentPercent != tempPercent) { currentPercent = tempPercent; Console.WriteLine($"Percents:{currentPercent}"); } } } } } }
public void Run() { try { for (var i = 0; i < 2000000; i++) { var payloadEvent = new PayloadEvent("A1"); runtime.EventService.SendEventBean(payloadEvent, "PayloadEvent"); } } catch (Exception ex) { Exception = ex; } }
private IEnumerable <PayloadEvent> GetEventsBetween(long startIndex, long stopIndex) { if (stopIndex <= startIndex) { return(new PayloadEvent[0]); } var result = new PayloadEvent[stopIndex - startIndex + 1]; Array.Copy(_array, startIndex, result, 0, stopIndex - startIndex + 1); return(result); }
public void Run() { try { for (var i = 0; i < 2000000; i++) { var payloadEvent = new PayloadEvent("A1"); Engine.EPRuntime.SendEvent(payloadEvent); } } catch (Exception ex) { Exception = ex; } }
public void Run() { try { for (var i = 0; i < _numEvents; i++) { var payloadEvent = new PayloadEvent(); _engine.EPRuntime.SendEvent(payloadEvent); if (i > 0 && i % 1000000 == 0) { Log.Info("sent " + i + " events"); } } Log.Info("sent " + _numEvents + " events"); } catch (Exception ex) { this._exception = ex; } }
public void Run() { try { for (var i = 0; i < numEvents; i++) { var payloadEvent = new PayloadEvent(); runtime.EventService.SendEventBean(payloadEvent, "PayloadEvent"); if (i > 0 && i % 1000000 == 0) { Console.Out.WriteLine("sent " + i + " events"); } } Console.Out.WriteLine("sent " + numEvents + " events"); } catch (Exception ex) { log.Error("Error while processing", ex); exception = ex; } }
public void Run() { try { for (var i = 0; i < NumEvents; i++) { var payloadEvent = new PayloadEvent(); Engine.EPRuntime.SendEvent(payloadEvent); if (i > 0 && i % 1000000 == 0) { Debug.WriteLine("sent " + i + " events"); } } Debug.WriteLine("sent " + NumEvents + " events"); } catch (Exception ex) { Debug.WriteLine(ex.StackTrace); Exception = ex; } }
public async Task <IDataProvider> GenerateDataProviderAsync(long collectionSize, object[] parameters) { if (collectionSize % 2 != 0) { _logger.Error("Requested size for generation is not even."); throw new ArgumentException("Collection size should be even number", nameof(collectionSize)); } try { _logger.Info($"Generate new ArrayDataProvider:{collectionSize}"); PayloadEvent[] eventArray = null; int currentPercent = 0; await Task.Run(() => { eventArray = new PayloadEvent[collectionSize]; for (int i = 0; i < collectionSize; i++) { var newEvent = GetNextEvent(); eventArray[i] = newEvent; var percent = (int)(100 * i / collectionSize); if (currentPercent != percent) { currentPercent = percent; EventGenerateProgressChanged?.Invoke(percent); } } }).ConfigureAwait(false); _logger.Info($"ArrayDataProvider successfully generated"); return(new ArrayDataProvider(eventArray)); } catch (Exception e) { _logger.Error(e); throw; } }
private IEnumerable <PayloadEvent> GetEventsBetween(long startIndex, long stopIndex) { if (stopIndex <= startIndex) { return(new PayloadEvent[0]); } var offset = startIndex * _entitySize; var count = stopIndex - startIndex + 1; var result = new PayloadEvent[count]; var byteSize = _entitySize * count; using (var accessor = _memoryMappedFile.CreateViewAccessor(offset, byteSize)) { for (long i = 0; i < count; i++) { accessor.Read(i * _entitySize, out PayloadEvent payloadEvent); result[i] = payloadEvent; } } return(result); }
public static void OnIntEvent(PayloadEvent <int> intEvent) { Console.WriteLine(intEvent.Payload); }