标签: java concurrency
我目前正在开发一个项目,该项目使用并行流覆盖布尔值,但只能将其更改为false。我很好奇它在Java中的工作原理。
如果两个请求同时(完全相同)用相同的值覆盖布尔值。会发生什么?
答案 0 :(得分:1)
不可能完全相同的时间。 Java虚拟机通常使用OS内核提供的底层调度程序。调度程序会不定期地对进程实施函数s(t),该函数根据特定策略(FIFO,SJF,循环,实时策略等)将CPU分配给进程。在每个t中,除非调度程序执行上下文切换,否则当前仅在运行一个进程,将其他进程放入就绪队列。