Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
3
Возможные результаты вывода из нескольких потоков
Условие задачи
Определите, какие варианты текста могут появиться в консоли после запуска программы, учитывая работу двух потоков, которые изменяют общие поля объекта.
class State {
var x = 0
var y = 0
}
fun main() {
val state = State()
val t1 = Thread {
state.x = 1
println(state.y)
}
val t2 = Thread {
state.y = 1
println(state.x)
}
t1.start()
t2.start()
t1.join()
t2.join()
}