Nazorat qilinmagan manbalarni ulashish
Dasturning aniqlanmaganligi Dasturning yakuniy natijasini oldindan aytib bo'lmaydi
Dasturning noto'g'ri ishlashi, algoritmning noto'g'ri ishlashi, favqulodda vaziyatlarning paydo bo'lishi.
public class Shared {
private int a = 0, b = 1;
public void one() { a = b; }
public void two() { b = a; }
...
}
public static void main(String[] args) {
final Shared object = new Shared();
for (int i = 0; i < 1000; i++) {
new Thread() { public void run() { object.one(); } }.start();
new Thread() { public void run() { object.two(); } }.start();
}
...
}
Qulflar (Bloklar)
Bir vaqtning o'zida faqat bitta oqim ba'zi bir ob'ektni qulflashi mumkin
Qulflangan ob'ektni blokirovka qilishga urinish, ushbu ob'ekt qulflanmaguncha oqimning to'xtatilishiga olib keladi
Qulfning mavjudligi ob'ekt bilan bog'liq barcha harakatlarga taqiq bermaydi.
Oqim 1
Do'stlaringiz bilan baham: |