本文整理了Java中org.jruby.RubyClass.addInvalidatorsAndFlush
方法的一些代码示例,展示了RubyClass.addInvalidatorsAndFlush
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyClass.addInvalidatorsAndFlush
方法的具体详情如下:
包路径:org.jruby.RubyClass
类名称:RubyClass
方法名:addInvalidatorsAndFlush
暂无
代码示例来源:origin: org.jruby/jruby-complete
public void addInvalidatorsAndFlush(List<Invalidator> invalidators) {
// add this class's invalidators to the aggregate
invalidators.add(methodInvalidator);
// if we're not at boot time, don't bother fully clearing caches
if (!runtime.isBootingCore()) cachedMethods.clear();
Map<RubyClass, Object> subclasses = this.subclasses;
// no subclasses, don't bother with lock and iteration
if (subclasses == null || subclasses.isEmpty()) return;
// cascade into subclasses
for (RubyClass subclass : subclasses.keySet()) subclass.addInvalidatorsAndFlush(invalidators);
}
代码示例来源:origin: org.jruby/jruby-core
public void addInvalidatorsAndFlush(List<Invalidator> invalidators) {
// add this class's invalidators to the aggregate
invalidators.add(methodInvalidator);
// if we're not at boot time, don't bother fully clearing caches
if (!runtime.isBootingCore()) cachedMethods.clear();
Map<RubyClass, Object> subclasses = this.subclasses;
// no subclasses, don't bother with lock and iteration
if (subclasses == null || subclasses.isEmpty()) return;
// cascade into subclasses
for (RubyClass subclass : subclasses.keySet()) subclass.addInvalidatorsAndFlush(invalidators);
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public void addInvalidatorsAndFlush(List<Invalidator> invalidators) {
// add this class's invalidators to the aggregate
invalidators.add(methodInvalidator);
// if we're not at boot time, don't bother fully clearing caches
if (!runtime.isBooting()) cachedMethods.clear();
// no subclasses, don't bother with lock and iteration
if (subclasses == null || subclasses.isEmpty()) return;
// cascade into subclasses
synchronized (runtime.getHierarchyLock()) {
Set<RubyClass> mySubclasses = subclasses;
if (mySubclasses != null) for (RubyClass subclass : mySubclasses) {
subclass.addInvalidatorsAndFlush(invalidators);
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public void addInvalidatorsAndFlush(List<Invalidator> invalidators) {
// add this class's invalidators to the aggregate
invalidators.add(methodInvalidator);
// if we're not at boot time, don't bother fully clearing caches
if (!runtime.isBooting()) cachedMethods.clear();
// no subclasses, don't bother with lock and iteration
if (subclasses == null || subclasses.isEmpty()) return;
// cascade into subclasses
synchronized (runtime.getHierarchyLock()) {
Set<RubyClass> mySubclasses = subclasses;
if (mySubclasses != null) for (RubyClass subclass : mySubclasses) {
subclass.addInvalidatorsAndFlush(invalidators);
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public void invalidateCacheDescendants() {
if (DEBUG) LOG.debug("invalidating descendants: {}", baseName);
if (includingHierarchies.isEmpty()) {
// it's only us; just invalidate directly
methodInvalidator.invalidate();
return;
}
List<Invalidator> invalidators = new ArrayList();
invalidators.add(methodInvalidator);
synchronized (getRuntime().getHierarchyLock()) {
for (RubyClass includingHierarchy : includingHierarchies) {
includingHierarchy.addInvalidatorsAndFlush(invalidators);
}
}
methodInvalidator.invalidateAll(invalidators);
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public void invalidateCacheDescendants() {
if (DEBUG) LOG.debug("invalidating descendants: {}", baseName);
if (includingHierarchies.isEmpty()) {
// it's only us; just invalidate directly
methodInvalidator.invalidate();
return;
}
List<Invalidator> invalidators = new ArrayList();
invalidators.add(methodInvalidator);
synchronized (getRuntime().getHierarchyLock()) {
for (RubyClass includingHierarchy : includingHierarchies) {
includingHierarchy.addInvalidatorsAndFlush(invalidators);
}
}
methodInvalidator.invalidateAll(invalidators);
}
代码示例来源:origin: org.jruby/jruby-complete
public void invalidateCacheDescendants() {
LOG.debug("{} invalidating descendants", baseName);
getRuntime().getCaches().incrementMethodInvalidations();
if (includingHierarchies.isEmpty()) {
// it's only us; just invalidate directly
methodInvalidator.invalidate();
return;
}
List<Invalidator> invalidators = new ArrayList<Invalidator>();
invalidators.add(methodInvalidator);
synchronized (getRuntime().getHierarchyLock()) {
for (RubyClass includingHierarchy : includingHierarchies) {
includingHierarchy.addInvalidatorsAndFlush(invalidators);
}
}
methodInvalidator.invalidateAll(invalidators);
}
代码示例来源:origin: org.jruby/jruby-core
public void invalidateCacheDescendants() {
LOG.debug("{} invalidating descendants", baseName);
getRuntime().getCaches().incrementMethodInvalidations();
if (includingHierarchies.isEmpty()) {
// it's only us; just invalidate directly
methodInvalidator.invalidate();
return;
}
List<Invalidator> invalidators = new ArrayList<Invalidator>();
invalidators.add(methodInvalidator);
synchronized (getRuntime().getHierarchyLock()) {
for (RubyClass includingHierarchy : includingHierarchies) {
includingHierarchy.addInvalidatorsAndFlush(invalidators);
}
}
methodInvalidator.invalidateAll(invalidators);
}
内容来源于网络,如有侵权,请联系作者删除!