Có một câu hỏi ngu ngốc đơn giản khiến tôi bận tâm và nảy ra nhiều lập luận trong đầu. Tôi muốn loại bỏ tất cả những nghi ngờ về những câu hỏi dưới đây.
class Clstest{
public static String testStaticMethod(String inFileStr) {
// section 0
// section 1
// do something with inFileStr
// section 2
// section 3
return inFileStr;
}
}
Giả sử rằng có năm luồng đang thực hiện lệnh gọi đến Clstest.testStaticMethod("arg-n")
cùng một lúc.
Chủ đề 1 cuộc gọi Clstest.testStaticMethod("arg-1")
.
Khi luồng 1 nằm trong phần 1, luồng 2 sẽ gọi Clstest.testStaticMethod("arg-2")
.
Sau đó, điều gì sẽ xảy ra với Chủ đề 1? Nó sẽ chuyển sang trạng thái ngủ?
Khi Chủ đề 1 có cơ hội, nó sẽ tiếp tục thực thi từ phần 1, nơi nó đã bị tạm dừng?
Làm thế nào nó xảy ra khi có một Clstest.testStaticMethod
và cùng một Clstest.testStaticMethod
được chia sẻ giữa tất cả năm chủ đề?
Có bất kỳ khả năng nào để trao đổi inFileStr
gửi bởi nhiều chủ đề không?