我已经为一个项目做了一个操作系统模拟器,对于下一部分,我必须修改模拟器,以包括4个CPU,而不是前一部分中的1个CPU,这样所有的过程都可以在更快的时间内完成。
所以我不得不添加并发性,但我不确定这种事情的正确设计模式是什么。我需要知道下面的内容是否真的能让我加快速度。
CPU extends Thread
//in main
get process1
get process 2
get process 3
get process 4
cpu1.run(process1)
cpu2.run(process2)
cpu3.run(process3)
cpu4.run(process4)
我
如果进程在与我们的应用服务器不同的cpu上继续运行,那么使用异步/等待是非常有用的。
例如,数据库查询在数据库服务器上运行,在运行查询时不需要阻塞应用程序线程。您可以从查看它。
让我们看看那个c#代码块
public async Task SaveAsync(User user)
{
using (DataContext ctx = new DataContext())
{
ctx.User.Add(user);
// database does its job while we are waiting