Nếu bạn có hai luồng gọi hàm tĩnh tại cùng một thời điểm, có nguy cơ đồng thời không? Và nếu hàm đó sử dụng một thành viên tĩnh của lớp, thì có vấn đề lớn hơn không?Đồng thời chức năng tĩnh ASP.NET
- Hai cuộc gọi có tách biệt với nhau không? (chức năng giống như được sao chép cho hai luồng?)
- Chúng có được tự động xếp hàng không?
Ví dụ trong ví dụ tiếp theo, có rủi ro không?
private static int a = 5;
public static int Sum()
{
int b = 4;
a = 9;
int c = a + b;
return c;
}
Ví dụ tiếp theo, có rủi ro không?
public static int Sum2()
{
int a = 5;
int b = 4;
int c = a + b;
return c;
}
Cập nhật: Và quả thực, nếu cả hai chức năng trong cùng một lớp, rủi ro là gì sau đó?
thx, Lieven Cardoen
tôi đã thay đổi ví dụ đầu tiên. Bây giờ nó có lẽ không phải là chủ đề an toàn nữa? –
Có tài liệu tham khảo, sách, liên kết tốt về chủ đề này không + cách bạn có thể giải quyết những tình huống này? –
http://www.amazon.com/Concurrent-Programming-Java-TM-Principles/dp/0201310090/ref=pd_bbs_sr_3?ie=UTF8&s=books&qid=1237967873&sr=8-3 sẽ phục vụ bạn tốt – krosenvold