Class NamedMemoryLimiter

java.lang.Object
org.apache.cassandra.index.sai.utils.NamedMemoryLimiter

@ThreadSafe public final class NamedMemoryLimiter extends Object
A simple, thread-safe memory usage tracker, named to reflect a particular scope.
  • Constructor Details

    • NamedMemoryLimiter

      public NamedMemoryLimiter(long limitBytes, String scope)
  • Method Details

    • usageExceedsLimit

      public boolean usageExceedsLimit()
      Returns:
      true if the current number of bytes allocated against the tracker has breached the limit, false otherwise
    • increment

      public long increment(long bytes)
    • decrement

      public long decrement(long bytes)
    • currentBytesUsed

      public long currentBytesUsed()
    • limitBytes

      public long limitBytes()
    • setLimitBytes

      public void setLimitBytes(long bytes)