Sobes.tech
Junior — Middle

Използвали ли сте механизма за блокиране с ключовата дума synchronized във вашите проекти?

sobes.tech AI

Отговор от AI

Да, ключовата дума synchronized в Java и Android се използва за организиране на блокировки и осигуряване на потокобезопасност при достъп до споделени ресурси.

Например, ако няколко нишки едновременно достъпват един обект и променят неговото състояние, synchronized гарантира, че само една нишка в даден момент изпълнява критичната секция от кода.

Пример за използване:

public class Counter {
    private int count = 0;

    public synchronized void increment() {
        count++;
    }

    public synchronized int getCount() {
        return count;
    }
}

В Android това е важно, например, при работа с общи данни в многонишкова среда, за да се избегнат състезателни условия и неконсистентни данни.