首页 > 解决方案 > 当线程改变其状态时会发生上下文切换吗?

问题描述

在java中,线程改变状态时会发生上下文切换吗?

我搜索了很多网站,但没有找到任何关于此的文章。

因此,如果有人可以提供帮助,将不胜感激。

像这样:

doSomething();
//when Thread.sleep() is called, thread state will change from runnable to timed_waiting, so will context switching happen?
Thread.sleep(1000);

标签: javamultithreadingconcurrencycontext-switchingthread-state

解决方案


是的,sleep()触发上下文切换到TIMED_WAITING.

请参阅:https ://docs.oracle.com/javase/8/docs/api/java/lang/Thread.State.html#TIMED_WAITING


推荐阅读