• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java NullListener类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.google.common.cache.CacheBuilder.NullListener的典型用法代码示例。如果您正苦于以下问题:Java NullListener类的具体用法?Java NullListener怎么用?Java NullListener使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



NullListener类属于com.google.common.cache.CacheBuilder包,在下文中一共展示了NullListener类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */
LocalCache(
    CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
  concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);

  keyStrength = builder.getKeyStrength();
  valueStrength = builder.getValueStrength();

  keyEquivalence = builder.getKeyEquivalence();
  valueEquivalence = builder.getValueEquivalence();

  maxWeight = builder.getMaximumWeight();
  weigher = builder.getWeigher();
  expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
  expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
  refreshNanos = builder.getRefreshNanos();

  removalListener = builder.getRemovalListener();
  removalNotificationQueue =
      (removalListener == NullListener.INSTANCE)
          ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
          : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();

  ticker = builder.getTicker(recordsTime());
  entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
  globalStatsCounter = builder.getStatsCounterSupplier().get();
  defaultLoader = loader;

  int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
  if (evictsBySize() && !customWeigher()) {
    initialCapacity = Math.min(initialCapacity, (int) maxWeight);
  }

  // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
  // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
  // entries. The special casing for size-based eviction is only necessary because that eviction
  // happens per segment instead of globally, so too many segments compared to the maximum size
  // will result in random eviction behavior.
  int segmentShift = 0;
  int segmentCount = 1;
  while (segmentCount < concurrencyLevel && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
    ++segmentShift;
    segmentCount <<= 1;
  }
  this.segmentShift = 32 - segmentShift;
  segmentMask = segmentCount - 1;

  this.segments = newSegmentArray(segmentCount);

  int segmentCapacity = initialCapacity / segmentCount;
  if (segmentCapacity * segmentCount < initialCapacity) {
    ++segmentCapacity;
  }

  int segmentSize = 1;
  while (segmentSize < segmentCapacity) {
    segmentSize <<= 1;
  }

  if (evictsBySize()) {
    // Ensure sum of segment max weights = overall max weights
    long maxSegmentWeight = maxWeight / segmentCount + 1;
    long remainder = maxWeight % segmentCount;
    for (int i = 0; i < this.segments.length; ++i) {
      if (i == remainder) {
        maxSegmentWeight--;
      }
      this.segments[i] =
          createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
    }
  } else {
    for (int i = 0; i < this.segments.length; ++i) {
      this.segments[i] =
          createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
    }
  }
}
 
开发者ID:zugzug90,项目名称:guava-mock,代码行数:80,代码来源:LocalCache.java


示例2: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */

LocalCache(CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
  concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);
  keyStrength = builder.getKeyStrength();
  valueStrength = builder.getValueStrength();
  keyEquivalence = builder.getKeyEquivalence();
  valueEquivalence = builder.getValueEquivalence();
  maxWeight = builder.getMaximumWeight();
  weigher = builder.getWeigher();
  expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
  expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
  refreshNanos = builder.getRefreshNanos();
  removalListener = builder.getRemovalListener();
  removalNotificationQueue = (removalListener == NullListener.INSTANCE)
    ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
    : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();
  ticker = builder.getTicker(recordsTime());
  entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
  globalStatsCounter = builder.getStatsCounterSupplier().get();
  defaultLoader = loader;
  int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
  if (evictsBySize() && !customWeigher()) {
    initialCapacity = Math.min(initialCapacity, (int) maxWeight);
  }

  // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
  // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
  // entries. The special casing for size-based eviction is only necessary because that eviction
  // happens per segment instead of globally, so too many segments compared to the maximum size
  // will result in random eviction behavior.

  int segmentShift = 0;
  int segmentCount = 1;
  while (segmentCount < concurrencyLevel
         && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
    ++segmentShift;
    segmentCount <<= 1;
  }
  this.segmentShift = 32 - segmentShift;
  segmentMask = segmentCount - 1;
  this.segments = newSegmentArray(segmentCount);
  int segmentCapacity = initialCapacity / segmentCount;
  if (segmentCapacity * segmentCount < initialCapacity) {
    ++segmentCapacity;
  }

  int segmentSize = 1;
  while (segmentSize < segmentCapacity) {
    segmentSize <<= 1;
  }
  if (evictsBySize()) {
    // Ensure sum of segment max weights = overall max weights
    long maxSegmentWeight = maxWeight / segmentCount + 1;
    long remainder = maxWeight % segmentCount;
    for (int i = 0; i < this.segments.length; ++i) {
      if (i == remainder) {
        maxSegmentWeight--;
      }
      this.segments[i] =
  createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
    }
  } else {
    for (int i = 0; i < this.segments.length; ++i) {
      this.segments[i] =
  createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
    }
  }
}
 
开发者ID:antlr,项目名称:codebuff,代码行数:72,代码来源:LocalCache.java


示例3: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */

LocalCache(CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
  concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);
  keyStrength = builder.getKeyStrength();
  valueStrength = builder.getValueStrength();
  keyEquivalence = builder.getKeyEquivalence();
  valueEquivalence = builder.getValueEquivalence();
  maxWeight = builder.getMaximumWeight();
  weigher = builder.getWeigher();
  expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
  expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
  refreshNanos = builder.getRefreshNanos();
  removalListener = builder.getRemovalListener();
  removalNotificationQueue = (removalListener == NullListener.INSTANCE)
    ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
    : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();
  ticker = builder.getTicker(recordsTime());
  entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
  globalStatsCounter = builder.getStatsCounterSupplier().get();
  defaultLoader = loader;
  int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
  if (evictsBySize() && !customWeigher()) {
    initialCapacity = Math.min(initialCapacity, (int) maxWeight);
  }

  // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
  // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
  // entries. The special casing for size-based eviction is only necessary because that eviction
  // happens per segment instead of globally, so too many segments compared to the maximum size
  // will result in random eviction behavior.

  int segmentShift = 0;
  int segmentCount = 1;
  while (segmentCount < concurrencyLevel
         && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
    ++segmentShift;
    segmentCount <<= 1;
  }
  this.segmentShift = 32 - segmentShift;
  segmentMask = segmentCount - 1;
  this.segments = newSegmentArray(segmentCount);
  int segmentCapacity = initialCapacity / segmentCount;
  if (segmentCapacity * segmentCount < initialCapacity) {
    ++segmentCapacity;
  }

  int segmentSize = 1;
  while (segmentSize < segmentCapacity) {
    segmentSize <<= 1;
  }
  if (evictsBySize()) {
    // Ensure sum of segment max weights = overall max weights
    long maxSegmentWeight = maxWeight / segmentCount + 1;
    long remainder = maxWeight % segmentCount;
    for (int i = 0; i < this.segments.length; ++i) {
      if (i == remainder) {
        maxSegmentWeight--;
      }
      this.segments[i] =
        createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
    }
  } else {
    for (int i = 0; i < this.segments.length; ++i) {
      this.segments[i] =
  createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
    }
  }
}
 
开发者ID:antlr,项目名称:codebuff,代码行数:72,代码来源:LocalCache.java


示例4: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
* Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
*/

     LocalCache(CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
 concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);
 keyStrength = builder.getKeyStrength();
 valueStrength = builder.getValueStrength();
 keyEquivalence = builder.getKeyEquivalence();
 valueEquivalence = builder.getValueEquivalence();
 maxWeight = builder.getMaximumWeight();
 weigher = builder.getWeigher();
 expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
 expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
 refreshNanos = builder.getRefreshNanos();
 removalListener = builder.getRemovalListener();
 removalNotificationQueue = (removalListener == NullListener.INSTANCE)
                                ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
                                : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();
 ticker = builder.getTicker(recordsTime());
 entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
 globalStatsCounter = builder.getStatsCounterSupplier().get();
 defaultLoader = loader;
 int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
 if (evictsBySize() && !customWeigher()) {
         initialCapacity = Math.min(initialCapacity, (int) maxWeight);
 }

 // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
 // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
 // entries. The special casing for size-based eviction is only necessary because that eviction
 // happens per segment instead of globally, so too many segments compared to the maximum size
 // will result in random eviction behavior.
 int segmentShift = 0;
 int segmentCount = 1;
 while (segmentCount < concurrencyLevel
        && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
         ++segmentShift;
         segmentCount <<= 1;
 }
 this.segmentShift = 32 - segmentShift;
 segmentMask = segmentCount - 1;
 this.segments = newSegmentArray(segmentCount);
 int segmentCapacity = initialCapacity / segmentCount;
 if (segmentCapacity * segmentCount < initialCapacity) {
         ++segmentCapacity;
 }
 int segmentSize = 1;
 while (segmentSize < segmentCapacity) {
         segmentSize <<= 1;
 }
 if (evictsBySize()) {
   // Ensure sum of segment max weights = overall max weights
         long maxSegmentWeight = maxWeight / segmentCount + 1;
         long remainder = maxWeight % segmentCount;
         for (int i = 0; i < this.segments.length; ++i) {
                                                                                                            if (i == remainder) {
             maxSegmentWeight--;
                                                                                                            }
                                                                                                            this.segments[i] = createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
         }
 } else {
   for (int i = 0; i < this.segments.length; ++i) {
     this.segments[i] = createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
   }
 }
     }
 
开发者ID:antlr,项目名称:codebuff,代码行数:68,代码来源:LocalCache.java


示例5: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */
LocalCache(
    CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
  concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);

  keyStrength = builder.getKeyStrength();
  valueStrength = builder.getValueStrength();

  keyEquivalence = builder.getKeyEquivalence();
  valueEquivalence = builder.getValueEquivalence();

  maxWeight = builder.getMaximumWeight();
  weigher = builder.getWeigher();
  expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
  expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
  refreshNanos = builder.getRefreshNanos();

  removalListener = builder.getRemovalListener();
  removalNotificationQueue = (removalListener == NullListener.INSTANCE)
      ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
      : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();

  ticker = builder.getTicker(recordsTime());
  entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
  globalStatsCounter = builder.getStatsCounterSupplier().get();
  defaultLoader = loader;

  int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
  if (evictsBySize() && !customWeigher()) {
    initialCapacity = Math.min(initialCapacity, (int) maxWeight);
  }

  // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
  // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
  // entries. The special casing for size-based eviction is only necessary because that eviction
  // happens per segment instead of globally, so too many segments compared to the maximum size
  // will result in random eviction behavior.
  int segmentShift = 0;
  int segmentCount = 1;
  while (segmentCount < concurrencyLevel
         && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
    ++segmentShift;
    segmentCount <<= 1;
  }
  this.segmentShift = 32 - segmentShift;
  segmentMask = segmentCount - 1;

  this.segments = newSegmentArray(segmentCount);

  int segmentCapacity = initialCapacity / segmentCount;
  if (segmentCapacity * segmentCount < initialCapacity) {
    ++segmentCapacity;
  }

  int segmentSize = 1;
  while (segmentSize < segmentCapacity) {
    segmentSize <<= 1;
  }

  if (evictsBySize()) {
    // Ensure sum of segment max weights = overall max weights
    long maxSegmentWeight = maxWeight / segmentCount + 1;
    long remainder = maxWeight % segmentCount;
    for (int i = 0; i < this.segments.length; ++i) {
      if (i == remainder) {
        maxSegmentWeight--;
      }
      this.segments[i] =
          createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
    }
  } else {
    for (int i = 0; i < this.segments.length; ++i) {
      this.segments[i] =
          createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
    }
  }
}
 
开发者ID:cplutte,项目名称:bts,代码行数:80,代码来源:LocalCache.java


示例6: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */
LocalCache(
    CacheBuilder<? super K, ? super V> builder, @NullableDecl CacheLoader<? super K, V> loader) {
  concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);

  keyStrength = builder.getKeyStrength();
  valueStrength = builder.getValueStrength();

  keyEquivalence = builder.getKeyEquivalence();
  valueEquivalence = builder.getValueEquivalence();

  maxWeight = builder.getMaximumWeight();
  weigher = builder.getWeigher();
  expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
  expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
  refreshNanos = builder.getRefreshNanos();

  removalListener = builder.getRemovalListener();
  removalNotificationQueue =
      (removalListener == NullListener.INSTANCE)
          ? LocalCache.<RemovalNotification<K, V>>discardingQueue()
          : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();

  ticker = builder.getTicker(recordsTime());
  entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
  globalStatsCounter = builder.getStatsCounterSupplier().get();
  defaultLoader = loader;

  int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
  if (evictsBySize() && !customWeigher()) {
    initialCapacity = Math.min(initialCapacity, (int) maxWeight);
  }

  // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
  // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
  // entries. The special casing for size-based eviction is only necessary because that eviction
  // happens per segment instead of globally, so too many segments compared to the maximum size
  // will result in random eviction behavior.
  int segmentShift = 0;
  int segmentCount = 1;
  while (segmentCount < concurrencyLevel && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
    ++segmentShift;
    segmentCount <<= 1;
  }
  this.segmentShift = 32 - segmentShift;
  segmentMask = segmentCount - 1;

  this.segments = newSegmentArray(segmentCount);

  int segmentCapacity = initialCapacity / segmentCount;
  if (segmentCapacity * segmentCount < initialCapacity) {
    ++segmentCapacity;
  }

  int segmentSize = 1;
  while (segmentSize < segmentCapacity) {
    segmentSize <<= 1;
  }

  if (evictsBySize()) {
    // Ensure sum of segment max weights = overall max weights
    long maxSegmentWeight = maxWeight / segmentCount + 1;
    long remainder = maxWeight % segmentCount;
    for (int i = 0; i < this.segments.length; ++i) {
      if (i == remainder) {
        maxSegmentWeight--;
      }
      this.segments[i] =
          createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
    }
  } else {
    for (int i = 0; i < this.segments.length; ++i) {
      this.segments[i] =
          createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
    }
  }
}
 
开发者ID:google,项目名称:guava,代码行数:80,代码来源:LocalCache.java


示例7: LocalCache

import com.google.common.cache.CacheBuilder.NullListener; //导入依赖的package包/类
/**
 * 从builder中获取相应的配置参数。 Creates a new, empty map with the specified strategy, initial capacity and concurrency level.
 */
LocalCache(CacheBuilder<? super K, ? super V> builder, @Nullable CacheLoader<? super K, V> loader) {
    concurrencyLevel = Math.min(builder.getConcurrencyLevel(), MAX_SEGMENTS);

    keyStrength = builder.getKeyStrength();
    valueStrength = builder.getValueStrength();

    keyEquivalence = builder.getKeyEquivalence();
    valueEquivalence = builder.getValueEquivalence();

    maxWeight = builder.getMaximumWeight();
    weigher = builder.getWeigher();
    expireAfterAccessNanos = builder.getExpireAfterAccessNanos();
    expireAfterWriteNanos = builder.getExpireAfterWriteNanos();
    refreshNanos = builder.getRefreshNanos();

    removalListener = builder.getRemovalListener();
    removalNotificationQueue = (removalListener == NullListener.INSTANCE) ? LocalCache
            .<RemovalNotification<K, V>> discardingQueue() : new ConcurrentLinkedQueue<RemovalNotification<K, V>>();

    ticker = builder.getTicker(recordsTime());
    entryFactory = EntryFactory.getFactory(keyStrength, usesAccessEntries(), usesWriteEntries());
    globalStatsCounter = builder.getStatsCounterSupplier().get();
    defaultLoader = loader;

    int initialCapacity = Math.min(builder.getInitialCapacity(), MAXIMUM_CAPACITY);
    if (evictsBySize() && !customWeigher()) {
        initialCapacity = Math.min(initialCapacity, (int) maxWeight);
    }

    // 找到最小2的次数的段数量,
    // Find the lowest power-of-two segmentCount that exceeds concurrencyLevel, unless
    // maximumSize/Weight is specified in which case ensure that each segment gets at least 10
    // entries. The special casing for size-based eviction is only necessary because that eviction
    // happens per segment instead of globally, so too many segments compared to the maximum size
    // will result in random eviction behavior.
    int segmentShift = 0;
    int segmentCount = 1;
    while (segmentCount < concurrencyLevel && (!evictsBySize() || segmentCount * 20 <= maxWeight)) {
        ++segmentShift;
        segmentCount <<= 1;
    }
    this.segmentShift = 32 - segmentShift;
    segmentMask = segmentCount - 1;

    this.segments = newSegmentArray(segmentCount);

    int segmentCapacity = initialCapacity / segmentCount;
    if (segmentCapacity * segmentCount < initialCapacity) {
        ++segmentCapacity;
    }

    int segmentSize = 1;
    while (segmentSize < segmentCapacity) {
        segmentSize <<= 1;
    }

    if (evictsBySize()) {
        // Ensure sum of segment max weights = overall max weights
        long maxSegmentWeight = maxWeight / segmentCount + 1;
        long remainder = maxWeight % segmentCount;
        for (int i = 0; i < this.segments.length; ++i) {
            if (i == remainder) {
                maxSegmentWeight--;
            }
            this.segments[i] = createSegment(segmentSize, maxSegmentWeight, builder.getStatsCounterSupplier().get());
        }
    } else {
        for (int i = 0; i < this.segments.length; ++i) {
            this.segments[i] = createSegment(segmentSize, UNSET_INT, builder.getStatsCounterSupplier().get());
        }
    }
}
 
开发者ID:ketao1989,项目名称:cnGuava,代码行数:76,代码来源:LocalCache.java



注:本文中的com.google.common.cache.CacheBuilder.NullListener类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ValidateProperty类代码示例发布时间:2022-05-22
下一篇:
Java Filter类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap