我想就我的问题寻求一些建议。我有一个批处理可以进行一些计算(多线程环境)并在表中进行一些插入。我想做一些像批量插入这样的事情,这意味着一旦我得到一个查询,等待有 1000 个查询,然后执行批量插入(不是一个一个地做)。
我想知道这是否有任何设计模式。我有一个解决方案,但它有点复杂:
构建一个将接收查询的方法
将它们添加到列表(字符串和/或语句)
在列表有 1000 个项目之前不要执行
问题:我该如何处理结束?我的意思是,最后的 999 个查询,我什么时候执行它们,因为我永远不会达到 1000 ?我应该怎么办 ?
我正在考虑每 5 分钟唤醒一次并检查列表中项目数的线程。如果他醒来两次并且数字相同,则执行现有查询。
有没有人有更好的主意?