本文整理汇总了C++中ExecutableBase::next方法的典型用法代码示例。如果您正苦于以下问题:C++ ExecutableBase::next方法的具体用法?C++ ExecutableBase::next怎么用?C++ ExecutableBase::next使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ExecutableBase
的用法示例。
在下文中一共展示了ExecutableBase::next方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: deleteAllCompiledCode
void Heap::deleteAllCompiledCode()
{
// If JavaScript is running, it's not safe to delete code, since we'll end
// up deleting code that is live on the stack.
if (m_vm->entryScope)
return;
for (ExecutableBase* current = m_compiledCode.head(); current; current = current->next()) {
if (!current->isFunctionExecutable())
continue;
static_cast<FunctionExecutable*>(current)->clearCodeIfNotCompiling();
}
m_codeBlocks.clearMarks();
m_codeBlocks.deleteUnmarkedAndUnreferenced();
}
示例2: deleteUnmarkedCompiledCode
void Heap::deleteUnmarkedCompiledCode()
{
ExecutableBase* next;
for (ExecutableBase* current = m_compiledCode.head(); current; current = next) {
next = current->next();
if (isMarked(current))
continue;
// We do this because executable memory is limited on some platforms and because
// CodeBlock requires eager finalization.
ExecutableBase::clearCodeVirtual(current);
m_compiledCode.remove(current);
}
m_codeBlocks.deleteUnmarkedAndUnreferenced();
m_jitStubRoutines.deleteUnmarkedJettisonedStubRoutines();
}