有一个简单的愚蠢问题困扰着我,并在我脑海中提出了几个论点。我想排除所有关于以下问题的疑问。
class Clstest{
public static String testStaticMethod(String inFileStr) {
// section 0
// section 1
// do something with inFileStr
// section 2
// section 3
return inFileStr;
}
}
假设有五个线程同时执行一个调用Clstest.testStaticMethod("arg-n")
。
线程1调用Clstest.testStaticMethod("arg-1")
。
当线程1位于第1节中时,线程2调用Clstest.testStaticMethod("arg-2")
。
那么线程1将会发生什么?会进入睡眠状态吗?
当线程1获得机会时,它将从暂停的第1节继续执行吗?
当所有五个线程共享一个Clstest.testStaticMethod
相同的Clstest.testStaticMethod
线程时,如何处理?
有可能互换inFileStr
多个线程发送的消息吗?