У нас один класс и несколько нитей
public synchronized void addFruit ( int index, String fruit){

       }
           public synchronized void removeFruit ( int index){

       }
Мьютекс у обоих методов один - мьютекс класса. Например есть 2 нити : нить 1 и нить 2, как они будут работать с методами? Нить 1, например, исполнила первый метод, в это время нить 2 ждет и не работает, затем нить 2 выполнила 2 метод, нить 1 ждет и не работает. Где выигрыш во времени здесь? Нити же нужны чтобы запараллелить работу программы?