首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >塞弗尼5主义的发展放缓

塞弗尼5主义的发展放缓
EN

Stack Overflow用户
提问于 2022-06-29 15:25:59
回答 1查看 85关注 0票数 0

我只是想知道为什么更新记录(刷新)会随着时间的推移而减慢。例如,如果我想检查多个记录并相互比较,那么在比较之后,更新一个像setCompared(True)这样的列。最初的1000个记录都很好,而且速度很快,但在那之后,每次刷新之后,它的速度似乎都会减慢。有什么原因吗,就像它的建立或什么的。在刷新()之后,是否需要清除()。

有人对此有解释吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-30 09:58:59

根据(理论文件),您应该这样做:

代码语言:javascript
复制
<?php

$batchSize = 20;
for ($i = 1; $i <= 10000; ++$i) {
    $user = new CmsUser;
    $user->setStatus('user');
    $user->setUsername('user' . $i);
    $user->setName('Mr.Smith-' . $i);
    $em->persist($user);
    if (($i % $batchSize) === 0) {
        $em->flush();
        $em->clear(); // Detaches all objects from Doctrine!
    }
}
$em->flush(); // Persist objects that did not make up an entire batch
$em->clear();

下面的代码显示了插入批处理大小为20的10000个对象的示例,这意味着我们用flush()插入它们20×20。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72804032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档