本文整理汇总了C++中MM_GCExtensionsBase::setStandardGC方法的典型用法代码示例。如果您正苦于以下问题:C++ MM_GCExtensionsBase::setStandardGC方法的具体用法?C++ MM_GCExtensionsBase::setStandardGC怎么用?C++ MM_GCExtensionsBase::setStandardGC使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MM_GCExtensionsBase
的用法示例。
在下文中一共展示了MM_GCExtensionsBase::setStandardGC方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
bool
MM_ConfigurationStandard::initialize(MM_EnvironmentBase* env)
{
MM_GCExtensionsBase* extensions = env->getExtensions();
bool result = MM_Configuration::initialize(env);
if (result) {
extensions->payAllocationTax = extensions->isConcurrentMarkEnabled() || extensions->isConcurrentSweepEnabled();
extensions->setStandardGC(true);
}
return result;
}
示例2: defined
bool
MM_ConfigurationStandard::initialize(MM_EnvironmentBase* env)
{
MM_GCExtensionsBase* extensions = env->getExtensions();
bool result = MM_Configuration::initialize(env);
if (result) {
extensions->payAllocationTax = false;
#if defined(OMR_GC_MODRON_CONCURRENT_MARK)
extensions->payAllocationTax = extensions->payAllocationTax || extensions->concurrentMark;
#endif /* OMR_GC_MODRON_CONCURRENT_MARK */
#if defined(OMR_GC_CONCURRENT_SWEEP)
extensions->payAllocationTax = extensions->payAllocationTax || extensions->concurrentSweep;
#endif /* OMR_GC_CONCURRENT_SWEEP */
extensions->setStandardGC(true);
}
return result;
}
示例3:
bool
MM_ConfigurationSegregated::initialize(MM_EnvironmentBase *env)
{
bool success = false;
/* OMRTODO investigate why these must be equal or it segfaults. */
MM_GCExtensionsBase *extensions = env->getExtensions();
extensions->splitAvailableListSplitAmount = extensions->gcThreadCount;
if (MM_Configuration::initialize(env)) {
env->getOmrVM()->_sizeClasses = _delegate.getSegregatedSizeClasses(env);
if (NULL != env->getOmrVM()->_sizeClasses) {
extensions->setSegregatedHeap(true);
extensions->setStandardGC(true);
extensions->arrayletsPerRegion = extensions->regionSize / env->getOmrVM()->_arrayletLeafSize;
success = true;
}
}
return success;
}