所以,我怀疑在下面给出的情况下哪种方式是最优化的:
我有一个车辆在地图上沿道路行驶的模拟。移动它们没问题,它们遵守交通信号灯等。但是我的问题是,移动车辆的最有效方式是什么。现在我每条道路都有一个线程,所以一个线程沿着从南到北的道路移动车辆,另一个用于从西到东的道路等。但它不是非常优化并且非常慢。另外,我发现很难让线程跟踪汽车之间的距离,这样它们就可以放慢速度而不是相互超越。
我是否需要使用包Executor
中的类有一个线程池java.util.concurrent
,然后每辆车有一个线程,然后在车辆离开模拟后释放线程?或者这也会让它变慢?
因此,总而言之,如果我没有在上面说清楚,我正在尝试找到一种最佳方式来跟踪当前在模拟(地图)中的车辆。我试图让每条道路都有一个线程让车辆通过,但这不是一个好的解决方案,因为我最终需要车辆有自己的逻辑。