org.rocksdb.ConcurrentTaskLimiter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of yamcs-rocksdb Show documentation
Show all versions of yamcs-rocksdb Show documentation
RocksDB fat jar that contains .so files for linux64, jnilib files
for Mac OSX, and a .dll for Windows x64. It contains the Yamcs merge operator for the Parameter Archive
// Copyright (c) Meta Platforms, Inc. and affiliates.
//
// This source code is licensed under both the GPLv2 (found in the
// COPYING file in the root directory) and Apache 2.0 License
// (found in the LICENSE.Apache file in the root directory).
package org.rocksdb;
public abstract class ConcurrentTaskLimiter extends RocksObject {
protected ConcurrentTaskLimiter(final long nativeHandle) {
super(nativeHandle);
}
/**
* Returns a name that identifies this concurrent task limiter.
*
* @return Concurrent task limiter name.
*/
public abstract String name();
/**
* Set max concurrent tasks.
* limit = 0 means no new task allowed.
* limit < 0 means no limitation.
*
* @param maxOutstandinsTask max concurrent tasks.
* @return the reference to the current instance of ConcurrentTaskLimiter.
*/
public abstract ConcurrentTaskLimiter setMaxOutstandingTask(final int maxOutstandinsTask);
/**
* Reset to unlimited max concurrent task.
*
* @return the reference to the current instance of ConcurrentTaskLimiter.
*/
public abstract ConcurrentTaskLimiter resetMaxOutstandingTask();
/**
* Returns current outstanding task count.
*
* @return current outstanding task count.
*/
public abstract int outstandingTask();
}