//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldHandleTheWholeWorkloadShebang() throws Throwable //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldHandleTheWholeWorkloadShebang() { // GIVEN const int size = 1_000; const long bufferTime = 3; VerifyingConsumer consumer = new VerifyingConsumer(size); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final java.time.Clock clock = org.neo4j.time.Clocks.systemClock(); Clock clock = Clocks.systemClock(); System.Func <long> chunkThreshold = clock.millis; System.Predicate <long> safeThreshold = time => clock.millis() - bufferTime >= time; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final DelayedBuffer<long> buffer = new DelayedBuffer<>(chunkThreshold, safeThreshold, 10, consumer); DelayedBuffer <long> buffer = new DelayedBuffer <long>(chunkThreshold, safeThreshold, 10, consumer); MaintenanceThread maintenance = new MaintenanceThread(buffer, 5); Race adders = new Race(); const int numberOfAdders = 20; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final byte[] offeredIds = new byte[size]; sbyte[] offeredIds = new sbyte[size]; for (int i = 0; i < numberOfAdders; i++) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final int finalI = i; int finalI = i; adders.AddContestant(() => { for (int j = 0; j < size; j++) { if (j % numberOfAdders == finalI) { buffer.Offer(j); offeredIds[j] = 1; parkNanos(MILLISECONDS.toNanos(current().Next(2))); } } }); } // WHEN (multi-threaded) offering of ids adders.Go(); // ... ensuring the test is sane itself (did we really offer all these IDs?) for (int i = 0; i < size; i++) { assertEquals("ID " + i, ( sbyte )1, offeredIds[i]); } maintenance.Halt(); buffer.Close(); // THEN consumer.AssertHaveOnlySeenRange(0, size - 1); }
protected void StartMaintenanceThread() { if (_maintenanceThread != null) { if (!_maintenanceThread.IsRunning) { _maintenanceThread.Start(); } } else { _maintenanceThread = new MaintenanceThread(this) { Interval = _maintThreadSleep }; _maintenanceThread.Start(); } }
protected void StartMaintenanceThread() { if (_maintenanceThread != null) { if (_maintenanceThread.IsRunning) { //if(Log.IsErrorEnabled) //{ // Log.Error(GetLocalizedString("main thread running")); //} } else { _maintenanceThread.Start(); } } else { _maintenanceThread = new MaintenanceThread(this); _maintenanceThread.Interval = _maintThreadSleep; _maintenanceThread.Start(); } }
protected void StartMaintenanceThread() { if(_maintenanceThread != null) { if(_maintenanceThread.IsRunning) { //if(Log.IsErrorEnabled) //{ // Log.Error(GetLocalizedString("main thread running")); //} } else { _maintenanceThread.Start(); } } else { _maintenanceThread = new MaintenanceThread(this); _maintenanceThread.Interval = _maintThreadSleep; _maintenanceThread.Start(); } }
protected void StartMaintenanceThread() { if (_maintenanceThread != null) { if (!_maintenanceThread.IsRunning) { _maintenanceThread.Start(); } } else { _maintenanceThread = new MaintenanceThread(this) {Interval = _maintThreadSleep}; _maintenanceThread.Start(); } }