在我的程序中,我有一个线程将供应变量增加 2,然后另一个线程从供应类中获取随机数量的供应。供应类最多只能存储 5 个值,并且由于睡眠和供应请求是随机的,供应计数可以增加超过其最大限制。
我要确保的是它不会超过这个限制。
有一个更好的方法吗?
(伪代码)
- 将供应量增加 2
- 如果供应量大于最大值,则将供应量分配给最大值
这是代码:
private int MAX = 5;
private int supply = 0;
public void run()
{
while(true) {
supply = supply + 2;
if(supply > MAX)
supply = MAX;
}
}