我有一个正在创建的程序(在 C# 中),我看到了两种方法..
1) 等待任意数量的 X 线程完成的作业管理器,完成后它会获得下一个工作块并创建一个新线程并将该块交给它
或者
2)我们创建X个线程来启动,给它们每个工作块,当一个线程完成一个块时,它会要求作业管理器做更多的工作。如果没有更多的工作,它会睡觉,然后再次询问,睡眠时间会越来越长。
该程序将运行并完成,但我可以看到它变成了一项不断寻找更多工作的服务。
每个块将包含许多数据 id,调用数据库以获取一些信息或对数据 id 执行操作,然后将数据 id 上的信息写入数据库。